MongoDBにprestodb(サーバーとCLIのバージョン0.157)で照会できないコレクションが1つあることが判明しました。prestodb raises IllegalArgumentException:ベースが1つのmongodbコレクションで空です
他のすべてのコレクションは正常に照会できますが、この1つのコレクションを直接照会したり、他のコレクションと結合することはできません。それはコレクションの中でも最大でも複雑でもありませんが、おそらくはプレストがタイプに問題があります。
java.lang.IllegalArgumentException: base is empty
at com.facebook.presto.spi.type.TypeSignature.checkArgument(TypeSignature.java:370)
at com.facebook.presto.spi.type.TypeSignature.<init>(TypeSignature.java:48)
at com.facebook.presto.spi.type.TypeSignature.parseTypeSignature(TypeSignature.java:101)
at com.facebook.presto.spi.type.TypeSignature.parseRowTypeSignature(TypeSignature.java:199)
at com.facebook.presto.spi.type.TypeSignature.parseTypeSignature(TypeSignature.java:104)
at com.facebook.presto.spi.type.TypeSignature.parseTypeSignature(TypeSignature.java:94)
at com.facebook.presto.mongodb.MongoSession.buildColumnHandle(MongoSession.java:199)
at com.facebook.presto.mongodb.MongoSession.loadTableSchema(MongoSession.java:185)
at com.facebook.presto.mongodb.MongoSession.access$000(MongoSession.java:76)
at com.facebook.presto.mongodb.MongoSession$1.load(MongoSession.java:128)
at com.facebook.presto.mongodb.MongoSession$1.load(MongoSession.java:123)
(...) very long stack trace
私はコレクションの命名に関連したいくつかの問題を検索したが、これは(それが実際に他の人の一部がそう、それは動作しますが、何のアンダースコアを持っていない)と同じ規則に従います。
これにはどのような原因が考えられますか?たぶん矛盾したスキーマですか? (私はMongoDBの特定のフィールドに日付と時には整数がありますが、それは確かめるために多くの掘削が必要であるという手がかりを持っています)
私はPrestoプロジェクトで問題を提出します。 –