Skip to content

Cherry-pick compile error fixes#129

Merged
yiwu-arbug merged 4 commits intotikv:6.4.tikvfrom
yiwu-arbug:cr_enum
Oct 30, 2019
Merged

Cherry-pick compile error fixes#129
yiwu-arbug merged 4 commits intotikv:6.4.tikvfrom
yiwu-arbug:cr_enum

Conversation

@yiwu-arbug
Copy link
Copy Markdown
Collaborator

Summary:
Cherry-pick the following compile error fixes from upstream:

adbc25a4c 2019-09-06 siying.d@fb.com      Rename InternalDBStatsType enum names (#5779)
04a849b7b 2019-08-12 yzha@fb.com          Fix compiler error by deleting GetContext default ctor (#5685)
51413e0a8 2019-09-30 zjay@fb.com          Fix a compile error (#5864)

And revert the previous change that disable shadow variable check:

be2ea5010 2019-10-25 yiwu@pingcap.com     Revert "Relax warnings as errors so we can build on Clang 11 (#123)"

Test Plan:
make all on Mac with clang11.

Yi Wu and others added 4 commits October 25, 2019 08:40
Summary:
When building with clang 9, warning is reported for InternalDBStatsType type names shadowed the one for statistics. Rename them.
Pull Request resolved: facebook#5779

Test Plan: Build with clang 9 and see it passes.

Differential Revision: D17239378

fbshipit-source-id: af28fb42066c738cd1b841f9fe21ab4671dafd18
Summary:
When updating compiler version for MyRocks I'm seeing this error with rocksdb:

```
ome/yzha/mysql/mysql-fork2/rocksdb/table/get_context.h:91:3: error: explicitly defaulted default constructor is implicitly deleted
      [-Werror,-Wdefaulted-function-deleted]
  GetContext() = default;
  ^
/home/yzha/mysql/mysql-fork2/rocksdb/table/get_context.h:166:18: note: default constructor of 'GetContext' is implicitly deleted because field
      'tracing_get_id_' of const-qualified type 'const uint64_t' (aka 'const unsigned long') would not be initialized
  const uint64_t tracing_get_id_;
                 ^
```

The error itself is rather self explanatory and makes sense.

Given that no one seems to be using the default ctor (they shouldn't, anyway), I'm deleting it.
Pull Request resolved: facebook#5685

Differential Revision: D16747712

Pulled By: yizhang82

fbshipit-source-id: 95c0acb958a1ed41154c0047d2e6fce7644de53f
Summary:
```
tools/block_cache_analyzer/block_cache_trace_analyzer.cc:653:48: error: implicit conversion loses integer precision: 'uint64_t' (aka 'unsigned long long') to 'std::__1::linear_congruential_engine<unsigned int, 48271, 0, 2147483647>::result_type' (aka 'unsigned int') [-Werror,-Wshorten-64-to-32]
  std::default_random_engine rand_engine(env_->NowMicros());
```
Pull Request resolved: facebook#5864

Differential Revision: D17668962

fbshipit-source-id: e08fa58b2a78a8dd8b334862b5714208f696b8ab
Copy link
Copy Markdown
Member

@Connor1996 Connor1996 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@yiwu-arbug yiwu-arbug merged commit d9ac746 into tikv:6.4.tikv Oct 30, 2019
@yiwu-arbug yiwu-arbug deleted the cr_enum branch October 30, 2019 06:01
Connor1996 pushed a commit to Connor1996/rocksdb that referenced this pull request Nov 21, 2019
* Revert "Relax warnings as errors so we can build on Clang 11 (tikv#123)"

This reverts commit 710819d.

* Rename InternalDBStatsType enum names (facebook#5779)

Summary:
When building with clang 9, warning is reported for InternalDBStatsType type names shadowed the one for statistics. Rename them.
Pull Request resolved: facebook#5779

Test Plan: Build with clang 9 and see it passes.

Differential Revision: D17239378

fbshipit-source-id: af28fb42066c738cd1b841f9fe21ab4671dafd18

* Fix compiler error by deleting GetContext default ctor (facebook#5685)

Summary:
When updating compiler version for MyRocks I'm seeing this error with rocksdb:

```
ome/yzha/mysql/mysql-fork2/rocksdb/table/get_context.h:91:3: error: explicitly defaulted default constructor is implicitly deleted
      [-Werror,-Wdefaulted-function-deleted]
  GetContext() = default;
  ^
/home/yzha/mysql/mysql-fork2/rocksdb/table/get_context.h:166:18: note: default constructor of 'GetContext' is implicitly deleted because field
      'tracing_get_id_' of const-qualified type 'const uint64_t' (aka 'const unsigned long') would not be initialized
  const uint64_t tracing_get_id_;
                 ^
```

The error itself is rather self explanatory and makes sense.

Given that no one seems to be using the default ctor (they shouldn't, anyway), I'm deleting it.
Pull Request resolved: facebook#5685

Differential Revision: D16747712

Pulled By: yizhang82

fbshipit-source-id: 95c0acb958a1ed41154c0047d2e6fce7644de53f

* Fix a compile error (facebook#5864)

Summary:
```
tools/block_cache_analyzer/block_cache_trace_analyzer.cc:653:48: error: implicit conversion loses integer precision: 'uint64_t' (aka 'unsigned long long') to 'std::__1::linear_congruential_engine<unsigned int, 48271, 0, 2147483647>::result_type' (aka 'unsigned int') [-Werror,-Wshorten-64-to-32]
  std::default_random_engine rand_engine(env_->NowMicros());
```
Pull Request resolved: facebook#5864

Differential Revision: D17668962

fbshipit-source-id: e08fa58b2a78a8dd8b334862b5714208f696b8ab
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants