You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@teaclave.apache.org by He Sun <no...@github.com.INVALID> on 2022/10/25 06:08:43 UTC

[apache/incubator-teaclave] Update leveldb (PR #661)

## Description

Update leveldb to v1.0.4 and move the code to third_party as a submodule for a clear view.

Fixes # (issue)

## Type of change (select or add applied and delete the others)

- [ ] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
- [ ] API change with a documentation update
- [ ] Additional test coverage
- [X] Code cleanup or just sync with upstream third-party crates

## How has this been tested?

## Checklist

- [X] Fork the repo and create your branch from `master`.
- [] If you&#39;ve added code that should be tested, add tests.
- [ ] If you&#39;ve changed APIs, update the documentation.
- [X] Ensure the tests pass (see CI results).
- [X] Make sure your code lints/format.

You can view, comment on, or merge this pull request online at:

  https://github.com/apache/incubator-teaclave/pull/661

-- Commit Summary --

  * CI: update actions/checkout
  * Update rusty-leveldb version to v1.0.4

-- File Changes --

    M .github/workflows/ci.yml (8)
    M .github/workflows/codeql-analysis.yml (4)
    M .github/workflows/ubuntu1804-test.yml (2)
    M .github/workflows/ubuntu2004-test.yml (12)
    M .gitmodules (4)
    M .licenserc.yaml (1)
    M LICENSE (2)
    M common/README.md (7)
    D common/rusty_leveldb_sgx/Cargo.toml (31)
    D common/rusty_leveldb_sgx/LICENSE (22)
    D common/rusty_leveldb_sgx/README.md (42)
    D common/rusty_leveldb_sgx/src/block.rs (522)
    D common/rusty_leveldb_sgx/src/block_builder.rs (199)
    D common/rusty_leveldb_sgx/src/blockhandle.rs (71)
    D common/rusty_leveldb_sgx/src/cache.rs (458)
    D common/rusty_leveldb_sgx/src/cmp.rs (326)
    D common/rusty_leveldb_sgx/src/db_impl.rs (1707)
    D common/rusty_leveldb_sgx/src/db_iter.rs (497)
    D common/rusty_leveldb_sgx/src/disk_env.rs (286)
    D common/rusty_leveldb_sgx/src/env.rs (72)
    D common/rusty_leveldb_sgx/src/env_common.rs (17)
    D common/rusty_leveldb_sgx/src/error.rs (110)
    D common/rusty_leveldb_sgx/src/filter.rs (324)
    D common/rusty_leveldb_sgx/src/filter_block.rs (259)
    D common/rusty_leveldb_sgx/src/infolog.rs (20)
    D common/rusty_leveldb_sgx/src/key_types.rs (277)
    D common/rusty_leveldb_sgx/src/lib.rs (125)
    D common/rusty_leveldb_sgx/src/log.rs (340)
    D common/rusty_leveldb_sgx/src/mem_env.rs (609)
    D common/rusty_leveldb_sgx/src/memtable.rs (403)
    D common/rusty_leveldb_sgx/src/merging_iter.rs (385)
    D common/rusty_leveldb_sgx/src/options.rs (121)
    D common/rusty_leveldb_sgx/src/skipmap.rs (612)
    D common/rusty_leveldb_sgx/src/snapshot.rs (155)
    D common/rusty_leveldb_sgx/src/table_block.rs (96)
    D common/rusty_leveldb_sgx/src/table_builder.rs (354)
    D common/rusty_leveldb_sgx/src/table_cache.rs (171)
    D common/rusty_leveldb_sgx/src/table_reader.rs (757)
    D common/rusty_leveldb_sgx/src/test_util.rs (169)
    D common/rusty_leveldb_sgx/src/types.rs (215)
    D common/rusty_leveldb_sgx/src/version.rs (1058)
    D common/rusty_leveldb_sgx/src/version_edit.rs (381)
    D common/rusty_leveldb_sgx/src/version_set.rs (1342)
    D common/rusty_leveldb_sgx/src/write_batch.rs (195)
    M services/authentication/enclave/Cargo.toml (2)
    M services/storage/enclave/Cargo.toml (2)
    M tests/integration/enclave/Cargo.toml (2)
    M tests/unit/enclave/Cargo.toml (2)
    M third_party/README.md (2)
    A third_party/rusty_leveldb_sgx (1)

-- Patch Links --

https://github.com/apache/incubator-teaclave/pull/661.patch
https://github.com/apache/incubator-teaclave/pull/661.diff

-- 
Reply to this email directly or view it on GitHub:
https://github.com/apache/incubator-teaclave/pull/661
You are receiving this because you are subscribed to this thread.

Message ID: &lt;apache/incubator-teaclave/pull/661@github.com&gt;

Re: [apache/incubator-teaclave] Update leveldb (PR #661)

Posted by Mingshen Sun <no...@github.com.INVALID>.
Merged #661 into master.

-- 
Reply to this email directly or view it on GitHub:
https://github.com/apache/incubator-teaclave/pull/661#event-7708564361
You are receiving this because you are subscribed to this thread.

Message ID: <ap...@github.com>

Re: [apache/incubator-teaclave] Update leveldb (PR #661)

Posted by He Sun <no...@github.com.INVALID>.
Thanks for your patience, @mssun . Let us own the code.

-- 
Reply to this email directly or view it on GitHub:
https://github.com/apache/incubator-teaclave/pull/661#issuecomment-1294919272
You are receiving this because you are subscribed to this thread.

Message ID: <ap...@github.com>

Re: [apache/incubator-teaclave] Update leveldb (PR #661)

Posted by He Sun <no...@github.com.INVALID>.
Hi mingshen,
Thanks for your comments. I am fine with the codebase and the name. 

The reason for putting it as a submodule in this PR is to have a clear view on the modification to the original code. In one repo, it is not very clear what we have done to rusty-leveldb. Do you have any advice?

-- 
Reply to this email directly or view it on GitHub:
https://github.com/apache/incubator-teaclave/pull/661#issuecomment-1291427040
You are receiving this because you are subscribed to this thread.

Message ID: <ap...@github.com>

Re: [apache/incubator-teaclave] Update leveldb (PR #661)

Posted by Mingshen Sun <no...@github.com.INVALID>.
Yes, I still remember that Zhaofeng and I had a long discussion on this and we decided to put in the Teaclave repo. There are pros and cons. I think the most important reason is about the ownership. We want to maintain LevelDB for SGX as part of Teaclave. Definitely, this makes it not obvious to diff with the upstream, but we think it's worth to do that. The best why to upgrade LevelDB for SGX is to apply any patches from upstream to the LevelDB in Teaclave's repo. Also, to make it more clear, we can document that which version we are based on.

-- 
Reply to this email directly or view it on GitHub:
https://github.com/apache/incubator-teaclave/pull/661#issuecomment-1293003903
You are receiving this because you are subscribed to this thread.

Message ID: <ap...@github.com>

Re: [apache/incubator-teaclave] Update leveldb (PR #661)

Posted by Mingshen Sun <no...@github.com.INVALID>.
Hi @henrysun007, thanks for the PR.

The reason we choose to put in the `common` directory is that we have changed `rusty_leveldb` a lot, and we don't have any plan to upstream the changes. Therefore, we'd like to keep it in the Teaclave codebase as a part of Teaclave.

I saw you're using a submodule for the changes (which is not under the Apache organization). This may be not suitable for further maintenance. Can you PR the changes of the `rusty_leveldb_sgx` in the source code?

For the name of the `common` directory, if you have better suggestion. Please advise.

-- 
Reply to this email directly or view it on GitHub:
https://github.com/apache/incubator-teaclave/pull/661#issuecomment-1291404332
You are receiving this because you are subscribed to this thread.

Message ID: <ap...@github.com>