by

Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    Sutou Kouhei
    @kou
    apache/arrow#7923 はTravis CIにしかs390xの環境がないので.travis.ymlに追加する必要がありますね。。。
    が、モリモリ追加するとTravis CIのジョブが詰まってストレスが貯まるんだけど!みたいなコメントが来ると思うのでジョブの追加には慎重になる必要があります。(現状に+1くらいなら大丈夫だと思います。)
    maven-centralに存在しない場合は自分でビルドしないといけないということですか!?
    Sutou Kouhei
    @kou
    @kojix2 packages.red-data-tools.orgのやつはMSYS2のパッケージのようにCIで全部完結するほど自動化できていないので、私が更新しておきました。
    upstreamに入ったpkg-configの対応とかもあったので。
    あぁ、MSYS2のパッケージにpkg-config用に https://github.com/msys2/MINGW-packages/blob/master/mingw-w64-arrow/PKGBUILD#L115-L120 みたいなやつを入れないといけないですね。次に更新するときにでも入れますか。
    upstreamにpkg-config対応が入ったのでruby-grでpkg-configを使ったGRの自動検出ができますね。
    あぁ、Homebrewのパッケージはmakeベースからcmakeベースにしないといけないのか。
    Kazuaki Ishizaki
    @kiszk
    コメントありがとうございます!
    まずは、+1でJavaを足せれば、と思います
    はい、maven-centralにない場合は自分でビルドする必要があります。s390xについては手元でビルドしました
    https://masayuki038.github.io/blog/2019/04/06/java-gandiva-on-windows/
    Sutou Kouhei
    @kou
    ジョブを追加するのっていけそうですか?
    なにかお手伝いしましょうか!?
    Kazuaki Ishizaki
    @kiszk
    まずは自分で書いてみようと思います。 1つ質問で、flatcがmaven-centralに無い、という上記の問題はどう解決するのがよいでしょうか?
    CIが走るたびに毎回flatcをコンパイルするのは時間の無駄ですが、 私がどこかに置いた野良flatcをダウンロードのも危なすぎると思います。
    Sutou Kouhei
    @kou
    https://bintray.com/apache/arrow/boost-mirror みたいにBintrayにバイナリーを(手動で)おけるので、CIではビルド済みのバイナリーをダウンロードして使うようにするのはどうですか!?
    アップロードは私が代わりにできます!
    Kazuaki Ishizaki
    @kiszk
    なるほど、ありがとうございます。では、flatc を 私のホームページにおいたらURLをtwitterでDMしますので、アップロードお願いいたします
    Sutou Kouhei
    @kou
    わかりました!
    Kazuaki Ishizaki
    @kiszk
    DMしました。お手すきのときにお願いいたします
    Sutou Kouhei
    @kou
    バイナリーはflatcだけで大丈夫ですか!?
    netty-nativeのバイナリーも作りますか!?
    Sutou Kouhei
    @kou
    これ、.exeの拡張子のままアップロードすればいいですか!?
    .exeはとったほうがいいですか!?
    (Linuxのバイナリーは拡張子がないのが普通だと思ったのです。)
    Kazuaki Ishizaki
    @kiszk
    .exeはつけたままでお願いいたします。 どのOSでも↓のような感じです。テストをskipしてbuildを進めたらprotobufも必要、と言われたので、今からもう一度cleanな環境でbuildだけを試して、一気にbinaryのアップロードをお願いしようと思います。
    https://repo.maven.apache.org/maven2/com/google/protobuf/protoc/3.7.1/
    Sutou Kouhei
    @kou
    わかりました!
    Kazuaki Ishizaki
    @kiszk
    再度、別ファイル名をDMしました。これらのファイルを、build時には cp or コマンドで明示的にローカルmvn repositoryにinstall、してから、mvnを実行します。
    Sutou Kouhei
    @kou
    アーカイブの中身をわけてもいいですか!?(wget ....tar.gz && tar xf ...tar.gzじゃなくて個別にwget ...exe && wget ...jarとかすることになってもいいですか!?)
    Protocol Buffersだけライセンスが違うので違う設定でファイルを置いておきたくて。
    Kazuaki Ishizaki
    @kiszk
    はい、分けていただいて構わないです & 個別DLでOKです(tar.gzなのは受け渡しの便宜だけです)。
    あと、1つ.soファイルを忘れていたので、tar.gzを更新しました。 同じURLから、もう一度ダウンロードお願いいたします。
    Sutou Kouhei
    @kou
    わかりました!
    Not Foudになってしまいました!
    Kazuaki Ishizaki
    @kiszk
    すみません、原因調査中です
    Sutou Kouhei
    @kou
    大丈夫です!
    Kazuaki Ishizaki
    @kiszk
    原因不明(gzがだめっぽい?)ので、ファイル共有サービスに変更しました。再度DMしました。
    Sutou Kouhei
    @kou
    ダウンロードできました!
    Sutou Kouhei
    @kou
    https://apache.bintray.com/arrow/ の下に${COMPONENT}-binary/${VERSION}/...みたいな感じでアップロードしました!
    使ってみてもらえますか!?
    Kazuaki Ishizaki
    @kiszk
    ありがとうございます。
    ci/scripts/java_build.sh の中で ${ARCH} を見て、 ダウンロードするので、場所的によいでしょうか?
    あ、docker-compose.ymlは${ARCH}が渡っていても、ci/scripts/java_build.sh までは渡らないのだろうか
    Sutou Kouhei
    @kou
    場所はいいと思うのですが、${ARCH}じゃなくてuname -suname -mを使うのがいいと思います。
    macOSでも使っているんですよ。
    .github/workflows/java.ymlにtypoを見つけてしまった。
    trivialなのでなにかのpull requestに混ぜて直してしまいたい。
    diff --git a/.github/workflows/java.yml b/.github/workflows/java.yml
    index a6796225e..385d02101 100644
    --- a/.github/workflows/java.yml
    +++ b/.github/workflows/java.yml
    @@ -83,7 +83,7 @@ jobs:
           - name: Docker Push
             if: success() && github.event_name == 'push' && github.repository == 'apache/arrow'
             continue-on-error: true
    -        run: archery docker push debian-go
    +        run: archery docker push debian-java
    
       macos:
         name: AMD64 MacOS 10.15 Java JDK ${{ matrix.jdk }}
    今はJava + Windowsのジョブってなかったんですね。
    Kazuaki Ishizaki
    @kiszk
    はい、他のx86_64と同じ、と思ったのか、flatc問題、なのかは設定しなかった理由は不明ですが
    なるほど、c_glib_test.sh などですね > uname
    Sutou Kouhei
    @kou
    そうですね!
    Kazuaki Ishizaki
    @kiszk
    bintrayからwgetして、ローカルmavenにinstall、buildが、手元でできました! ありがとうございます。
    これからjava_build.shをcommitします。
    Kazuaki Ishizaki
    @kiszk
    Javaでのbuildは順調に進みましたが、コンパイルするファイル数が多くて10分制限にひっかかったかもしれません
    https://travis-ci.org/github/apache/arrow/jobs/717184610
    Sutou Kouhei
    @kou
    次回のオンライン開発イベントをPyCon JP 2020 Sprintの時期にする件ですが、8月26日(水)10:00-21:30にしようと思います!
    (えいやで決めました。)
    Kenta Murata
    @mrkn
    Ruby の開発者会議の日なので、余裕があったら午前中だけ出ます。
    Sutou Kouhei
    @kou
    わかりました!
    Sutou Kouhei
    @kou
    @kiszk GitHub Actionsでは5mで終わっている https://github.com/apache/arrow/runs/980220380?check_suite_focus=true 処理が、タイムアウトを30分にしても終わらない https://travis-ci.org/github/apache/arrow/jobs/717771534 のは妙なので、単に時間がかかっているのではなく、どこかで刺さっているのかもしれません。。。
    Kazuaki Ishizaki
    @kiszk
    ありがとうございます。30分でも終わらないのは変ですね。手元のs390マシン(結構速い)だと、この約500個のコンパイルは1分で終わっています。30倍以上は変なので、TravisCI環境特有の原因に刺さってしまったかもしれません。特大ブーメラン承知でいうと、TravisCIの処理が遅いのが、この問題の特定を面倒にしてますね...
    Sutou Kouhei
    @kou
    試しに手元のAMD Ryzen 9 3900XなマシンでQEMU上で動かしているのですが、1.5時間かかっても終わらないんですね。。。
    コア数の2倍のスレッド数でビルドしているみたいなので、もしかしたら、メモリー不足でスラッシングしているのかもなぁと思いました!
    https://docs.travis-ci.com/user/reference/overview/ 使えるメモリーは多くて4GBみたいです。
    Kazuaki Ishizaki
    @kiszk
    なるほど、ではs390だけ-T 2Cをとってみます
    Sutou Kouhei
    @kou
    なにも変わりませんでしたね。。。
    すみません。。。
    どのファイルをコンパイルしているかみたいな情報も出すことはできるものなんでしょうか?
    (ログレベルを上げるとでるのかしら。)
    Kazuaki Ishizaki
    @kiszk
    いえいえ。 表示を出せないかは、いまググっています
    Kazuaki Ishizaki
    @kiszk
    -Dmaven.compiler.verbose=true をつけると表示は出るのですが、コンパイルが終わった後に一気に出るっぽい、のでいまいち使えなさそうです...
    Sutou Kouhei
    @kou
    たしかに。。。
    Kazuaki Ishizaki
    @kiszk
    このoptionで、javac -verbose ... となって、javacがmessageを出しています。javac -verboseは、リアルタイムにメッセージを出しているようです。
    ただし、mvnからforkしてjavacを実行しているので、stdoutをbufferingしてしまい、mvnからみるとforkしたjavacが終わったときにはじめて、javacが出したメッセージを受け取る、となっていて、この挙動になっている(ソースコードは追っていませんが)。
    Kazuaki Ishizaki
    @kiszk
    https://github.com/apache/arrow/blob/master/java/pom.xml#L196 この行をfalse、にするとメッセージがでてくるようになりました。
    一度これで走らせてみます。
    Kazuaki Ishizaki
    @kiszk
    あと、apache/arrow#7938 に入れていただいた変更を、誤ってpush -fで消してしまったようです。申し訳ありません。