Details

    • 10.1.10

    Description

      TokuDB apparently doesn't built on OS X:

      [ 72%] Building CXX object storage/tokudb/ft-index/locktree/CMakeFiles/locktree_static.dir/locktree.cc.o
      In file included from /Users/kolbe/Devel/bzr/maria/10.0.16/storage/tokudb/ft-index/locktree/locktree.cc:99:
      In file included from /Users/kolbe/Devel/bzr/maria/10.0.16/storage/tokudb/ft-index/locktree/locktree.h:94:
      /Users/kolbe/Devel/bzr/maria/10.0.16/storage/tokudb/ft-index/buildheader/db.h:323:1: error: empty struct has size 0 in C, size 1 in C++ [-Werror,-Wextern-c-compat]
      struct __toku_db_lsn {
      ^
      1 error generated.
      make[2]: *** [storage/tokudb/ft-index/locktree/CMakeFiles/locktree_static.dir/locktree.cc.o] Error 1
      make[1]: *** [storage/tokudb/ft-index/locktree/CMakeFiles/locktree_static.dir/all] Error 2
      make: *** [all] Error 2

      This should either be fixed, or TokuDB should be disabled on OS X for now.

      Attachments

        Issue Links

          Activity

            svoj Sergey Vojtovich added a comment - Beware of 10.1 PR: https://github.com/MariaDB/server/pull/79

            There are a number of errors that cause TokuDB to fail compiling on OS X. All these failures are still present in the 5.5 branch, so that is where we should address them.

            The first error is related to the DB_LSN struct. Being declared empty, according to the C++ standard, it must be assigned a size of 1, while in C it does not. To fix this we add a dummy char field (of size 1). This fix has also been implemented upstream within the TokuDB repository and makes sense.

            cvicentiu Vicențiu Ciorbaru added a comment - There are a number of errors that cause TokuDB to fail compiling on OS X. All these failures are still present in the 5.5 branch, so that is where we should address them. The first error is related to the DB_LSN struct. Being declared empty, according to the C++ standard, it must be assigned a size of 1, while in C it does not. To fix this we add a dummy char field (of size 1). This fix has also been implemented upstream within the TokuDB repository and makes sense.

            A second error is related to unused functions within the tokudb_dump.cc. I've removed the functions from the codebase.

            A third error is related to a redundant if statement on the address of a member field in ft-index/ft/txn/rollback.cc. The address of a member field is always true.

            A fourth error is caused by specifying attribute(nonnull) for the copyout function within ft-index/util/dmt.h.
            By examining the code paths, we can see that only the output parameter should not be passed as null. All other parameters can be set to null. The code does actually call the function with null parameters so we can't just remove the null checks.

            cvicentiu Vicențiu Ciorbaru added a comment - A second error is related to unused functions within the tokudb_dump.cc. I've removed the functions from the codebase. A third error is related to a redundant if statement on the address of a member field in ft-index/ft/txn/rollback.cc. The address of a member field is always true. A fourth error is caused by specifying attribute(nonnull) for the copyout function within ft-index/util/dmt.h. By examining the code paths, we can see that only the output parameter should not be passed as null. All other parameters can be set to null. The code does actually call the function with null parameters so we can't just remove the null checks.

            Hi Sergei!

            Can you please review the series of patches on the commits mailing list related to this issue?

            I've fixed all the errors within TokuDB on Mac OS X. The fixes are done on 5.5 as the problems are also present there.

            All the changes that I've done, I've double checked with the upstream TokuDB repository.

            One of the commits is actually from a pull request from the community.

            cvicentiu Vicențiu Ciorbaru added a comment - Hi Sergei! Can you please review the series of patches on the commits mailing list related to this issue? I've fixed all the errors within TokuDB on Mac OS X. The fixes are done on 5.5 as the problems are also present there. All the changes that I've done, I've double checked with the upstream TokuDB repository. One of the commits is actually from a pull request from the community.
            cvicentiu Vicențiu Ciorbaru added a comment - Closed with: 591e74c7e8f682f2eada7496f50aa73f38bd168d e386523a41245d8b03f1338934c1aa965530e4fc f39b9e04db1e71e72bfc19174f257db5147df440 64149590c47d1cf6b1b227d8c90bdc23d20a8956 f89c9fc4b7b5d82c79775cb848225900b45a6b79

            People

              cvicentiu Vicențiu Ciorbaru
              kolbe Kolbe Kegel (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.