- Absolutně nemůžete kombinovat verze Hadoop-common, hadoop-aws, aws-s3-sdk a jackson z toho, co všechno očekává, nebo uvidíte stopy zásobníku.
- A všechno je to open source, takže pokud lokálně D/L všechny zdrojové JARy, vaše IDE vám pomůže najít, co způsobuje trasování zásobníku. Toto děláme všichni . Není to žádná magie, moderní IDE (intellij IDEA) mají dokonce speciální ladění zásobníku.
Tento přichází, protože hodnota fs.s3a.multipart.size
nastavte v /core-default.xml
hadoop-common zdroj je 100 milionů, který přišel s HADOOP-13680
a rozsah analyzující manipulační čísla jako "100M" místo 104857600 . Toto trasování zásobníku říká „Konfigurace Hadoop 2.8+“
Můžete zkusit nastavit vlastnost ve svých konfiguracích na tuto číselnou hodnotu, ale je to varovný signál, že verze JAR nejsou synchronizované a pravděpodobně se dostanete jen o pár řádků, než se něco jiného zlomí.
Oprava:ujistěte se, že hadoop-common.jar
a hadoop-aws.jar
jsou synchronizované. Vypadá to, že máte ty jackson a aws seřazené, ačkoli jackson je natolik komplexní, že to nikdy nemůžete považovat za samozřejmost.