Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make some options dynamically configurable #43

Closed
hermanlee opened this issue Sep 28, 2015 · 15 comments
Closed

Make some options dynamically configurable #43

hermanlee opened this issue Sep 28, 2015 · 15 comments
Assignees
Labels

Comments

@hermanlee
Copy link
Contributor

Issue by yoshinorim
Friday May 29, 2015 at 00:18 GMT
Originally opened as MySQLOnRocksDB#74


Some options like rocksdb_bytes_per_sync should be configurable dynamically.

@hermanlee
Copy link
Contributor Author

Comment by jkedgar
Wednesday Sep 09, 2015 at 17:03 GMT


Does this mean that you want a global variable in MyRocks so that you can configure this option by using "Set rocksdb_bytes_per_sync = "?

What other options should be this way?

@hermanlee
Copy link
Contributor Author

Comment by yoshinorim
Wednesday Sep 09, 2015 at 17:27 GMT


I'd like to start from dynamically configurable DB options. Static options such as wal_dir, rocksdb_data_dir are not targets. For CF/Table options, I think we need more discussions.

@hermanlee
Copy link
Contributor Author

Comment by jkedgar
Wednesday Sep 09, 2015 at 17:31 GMT


Is there a list of dynamically configurable options?

@hermanlee
Copy link
Contributor Author

Comment by yoshinorim
Wednesday Sep 09, 2015 at 17:39 GMT


^^ @siying @rven1

@hermanlee
Copy link
Contributor Author

Comment by siying
Wednesday Sep 09, 2015 at 17:41 GMT


Search options.h and all dynamic configurable options will write in comments "dynamic changeable".

@hermanlee
Copy link
Contributor Author

Comment by jkedgar
Wednesday Sep 09, 2015 at 18:07 GMT


The SetOptions() method appears to operate on a column family - the default column family if no column family is specified. Do I need to iterate through all the column families when an option is set via MySQL or do I just set it for the default column family?

The bytes_per_sync setting does not appear to be dynamically configurable. It is not listed as such in options.h and doesn't show up in util/options_helper.cc. Am I missing something?

@jkedgar
Copy link
Contributor

jkedgar commented Sep 29, 2015

I didn't receive any comments on my questions. The questions are again:

  1. The request is for options like rocksdb_bytes_per_sync to be configurable via MySQL, but this option is not dynamically configurable (the only dynamically configurable options appear to be specified in rocksdb/util/options_helper.cc and 'bytes_per_sync' is not listed). Should I just ignore this and do all the other dynamically configured options?

  2. The SetOptions() command in RocksDB is specific to a column family. Should the option change occur on just the default column family or should it occur on all column families associated with the database? I'm guessing that is should apply to all, but would like confirmation of that.

@hermanlee
Copy link
Contributor Author

cc @yoshinorim

@yoshinorim
Copy link
Contributor

  1. Some parameters like Rate Limiter is not configurable via options, but has an interface at util/rate_limiter.h::SetBytesPerSecond(). So some special handling is needed to configure Rate Limiter settings. I hope there aren't many parameters like it.

  2. Is CF handle needed to change DB options too? I think we should start from dynamic DB options. We won't need dynamic CF options very much. You'd better talk with Siying and Venky if there is no reasonable api to change DB options.

@jkedgar
Copy link
Contributor

jkedgar commented Sep 29, 2015

  1. Maybe I'm not understanding, but the DB::SetOptions() method takes a column family as the first argument. There is a version that doesn't, but it just calls the other version with DefaultColumnFamily(). I'll also try to talk to Siying and Venkey.

@rven1
Copy link
Contributor

rven1 commented Sep 29, 2015

DBOptions are not dynamically changeable. eg. bytes_per_sync and rate_limiter
Dynamic options per column family have to be changed for each column family.

@jkedgar
Copy link
Contributor

jkedgar commented Sep 29, 2015

So there are database-wide options that are not dynamically changeable and there are some column family options which are dynamically changeable. Here's a list of the options that I see that are dynamically configurable:

Memtable options:

  • write_buffer_size
  • arena_block_size
  • memtable_prefix_bloom_bits
  • memtable_prefix_bloom_probes
  • memtable_prefix_bloom_huge_page_tlb_size
  • max_successive_merges
  • filter_deletes
  • max_write_buffer_number
  • inplace_update_num_locks

Compaction options:

  • disable_auto_compactions
  • soft_rate_limit
  • hard_pending_compaction_bytes_limit
  • hard_rate_limit (deprecated)
  • level0_file_num_compaction_trigger
  • level0_slowdown_writes_trigger
  • level0_stop_writes_trigger
  • max_grandparent_overlap_factor
  • expanded_compaction_factor
  • source_compaction_factor
  • target_file_size_base
  • target_file_size_multiplier
  • max_bytes_for_level_base
  • max_bytes_for_level_multiplier
  • max_bytes_for_level_multiplier_additional (input is an array - difficult in MySQL)
  • verify_checksums_in_compaction

Miscellaneous options:

  • max_sequential_skip_in_iterations
  • paranoid_file_checks

How many of these make sense to change via MySQL 'SET' statements? And should they be global across the entire database or should we have some way of setting them for different column families (indexes)?

@jkedgar
Copy link
Contributor

jkedgar commented Sep 30, 2015

After getting confirmation that I do have to update each column family to set any of these values as well as information that the rate limiter option is set-able using a different method, I've been thinking more about how this will work.

My assumption is that calling SET <variable> = <value> would not persist beyond the life of the server (i.e. rebooting the mysqld process would cause this information to be forgotten). Does this sound correct?

Also, if I think I probably need to keep track of the current set options for the database so that if a new column family is created (via a new index), I can set the options for this column family to match the rest of them. Does that sound correct?

@mdcallag
Copy link
Contributor

mdcallag commented Oct 1, 2015

In MySQL-land SET options only exist for the life of the process. MySQL
operations is happy with that as they avoid a mysqld restart thanks to SET,
and in the background do their magic to update my.cnf files

On Wed, Sep 30, 2015 at 9:28 AM, Jay Edgar notifications@github.com wrote:

After getting confirmation that I do have to update each column family to
set any of these values as well as information that the rate limiter option
is set-able using a different method, I've been thinking more about how
this will work.

My assumption is that calling SET = would not persist beyond the life of
the server (i.e. rebooting the mysqld process would cause this information
to be forgotten). Does this sound correct?

Also, if I think I probably need to keep track of the current set options
for the database so that if a new column family is created (via a new
index), I can set the options for this column family to match the rest of
them. Does that sound correct?


Reply to this email directly or view it on GitHub
#43 (comment).

Mark Callaghan
mdcallag@gmail.com

jkedgar added a commit that referenced this issue Oct 13, 2015
Summary:
Currently rocksdb_rate_limiter_bytes_per_sec can only be used to set up a rate limiter during
startup.  If the bytes_per_sec value needs to change after startup, that is not possible.  Change this
to allow for this possibility.  If no rate limiter was setup during startup you won't be able to start
and if one is set up during startup you won't be able to disable it.  But if one is set up during startup
the value for the bytes_per_sync will be changeable

Issue #43 (#43)

Test Plan: MTR with expanded rocksdb_rate_limiter_bytes_per_sec_basic.test

Reviewers: maykov, yoshinorim, hermanlee4

Reviewed By: hermanlee4

Differential Revision: https://reviews.facebook.net/D48339
@jkedgar
Copy link
Contributor

jkedgar commented Oct 13, 2015

@jkedgar jkedgar closed this as completed Oct 13, 2015
spetrunia added a commit that referenced this issue Jan 5, 2016
Summary:
Fix issue #42. Also issue #43: Ranges on t.key > const are not handled
efficiently:

Make ha_rocksdb::index_read_map() do the right thing when invoked with
find_flag=HA_READ_KEY_OR_NEXT, both for forward and reverse column
families.

Detailed explanation of actions is provided in rocksdb-range-access.txt

Test Plan: mtr t/rocksdb_range.test, used gcov to check the new code is covered

Reviewers: maykov, hermanlee4, jonahcohen, jtolmer, yoshinorim

Reviewed By: yoshinorim

Differential Revision: https://reviews.facebook.net/D35103
jkedgar added a commit that referenced this issue Jan 5, 2016
Summary:
Currently rocksdb_rate_limiter_bytes_per_sec can only be used to set up a rate limiter during
startup.  If the bytes_per_sec value needs to change after startup, that is not possible.  Change this
to allow for this possibility.  If no rate limiter was setup during startup you won't be able to start
and if one is set up during startup you won't be able to disable it.  But if one is set up during startup
the value for the bytes_per_sync will be changeable

Issue #43 (#43)

Test Plan: MTR with expanded rocksdb_rate_limiter_bytes_per_sec_basic.test

Reviewers: maykov, yoshinorim, hermanlee4

Reviewed By: hermanlee4

Differential Revision: https://reviews.facebook.net/D48339
george-lorch pushed a commit to george-lorch/percona-server that referenced this issue May 7, 2016
Summary:
Currently rocksdb_rate_limiter_bytes_per_sec can only be used to set up a rate limiter during
startup.  If the bytes_per_sec value needs to change after startup, that is not possible.  Change this
to allow for this possibility.  If no rate limiter was setup during startup you won't be able to start
and if one is set up during startup you won't be able to disable it.  But if one is set up during startup
the value for the bytes_per_sync will be changeable

Issue percona#43 (facebook/mysql-5.6#43)

Test Plan: MTR with expanded rocksdb_rate_limiter_bytes_per_sec_basic.test

Reviewers: maykov, yoshinorim, hermanlee4

Reviewed By: hermanlee4

Differential Revision: https://reviews.facebook.net/D48339
george-lorch pushed a commit to george-lorch/percona-server that referenced this issue May 7, 2016
Summary:
Currently rocksdb_rate_limiter_bytes_per_sec can only be used to set up a rate limiter during
startup.  If the bytes_per_sec value needs to change after startup, that is not possible.  Change this
to allow for this possibility.  If no rate limiter was setup during startup you won't be able to start
and if one is set up during startup you won't be able to disable it.  But if one is set up during startup
the value for the bytes_per_sync will be changeable

Issue percona#43 (facebook/mysql-5.6#43)

Test Plan: MTR with expanded rocksdb_rate_limiter_bytes_per_sec_basic.test

Reviewers: maykov, yoshinorim, hermanlee4

Reviewed By: hermanlee4

Differential Revision: https://reviews.facebook.net/D48339
george-lorch pushed a commit to george-lorch/percona-server that referenced this issue May 9, 2016
Summary:
Currently rocksdb_rate_limiter_bytes_per_sec can only be used to set up a rate limiter during
startup.  If the bytes_per_sec value needs to change after startup, that is not possible.  Change this
to allow for this possibility.  If no rate limiter was setup during startup you won't be able to start
and if one is set up during startup you won't be able to disable it.  But if one is set up during startup
the value for the bytes_per_sync will be changeable

Issue percona#43 (facebook/mysql-5.6#43)

Test Plan: MTR with expanded rocksdb_rate_limiter_bytes_per_sec_basic.test

Reviewers: maykov, yoshinorim, hermanlee4

Reviewed By: hermanlee4

Differential Revision: https://reviews.facebook.net/D48339
george-lorch pushed a commit to george-lorch/percona-server that referenced this issue May 9, 2016
Summary:
Currently rocksdb_rate_limiter_bytes_per_sec can only be used to set up a rate limiter during
startup.  If the bytes_per_sec value needs to change after startup, that is not possible.  Change this
to allow for this possibility.  If no rate limiter was setup during startup you won't be able to start
and if one is set up during startup you won't be able to disable it.  But if one is set up during startup
the value for the bytes_per_sync will be changeable

Issue percona#43 (facebook/mysql-5.6#43)

Test Plan: MTR with expanded rocksdb_rate_limiter_bytes_per_sec_basic.test

Reviewers: maykov, yoshinorim, hermanlee4

Reviewed By: hermanlee4

Differential Revision: https://reviews.facebook.net/D48339
hermanlee pushed a commit that referenced this issue Jan 31, 2017
Summary:
Fix issue #42. Also issue #43: Ranges on t.key > const are not handled
efficiently:

Make ha_rocksdb::index_read_map() do the right thing when invoked with
find_flag=HA_READ_KEY_OR_NEXT, both for forward and reverse column
families.

Detailed explanation of actions is provided in rocksdb-range-access.txt

Test Plan: mtr t/rocksdb_range.test, used gcov to check the new code is covered

Reviewers: maykov, hermanlee4, jonahcohen, jtolmer, yoshinorim

Reviewed By: yoshinorim

Differential Revision: https://reviews.facebook.net/D35103
hermanlee pushed a commit that referenced this issue Jan 31, 2017
Summary:
Currently rocksdb_rate_limiter_bytes_per_sec can only be used to set up a rate limiter during
startup.  If the bytes_per_sec value needs to change after startup, that is not possible.  Change this
to allow for this possibility.  If no rate limiter was setup during startup you won't be able to start
and if one is set up during startup you won't be able to disable it.  But if one is set up during startup
the value for the bytes_per_sync will be changeable

Issue #43 (#43)

Test Plan: MTR with expanded rocksdb_rate_limiter_bytes_per_sec_basic.test

Reviewers: maykov, yoshinorim, hermanlee4

Reviewed By: hermanlee4

Differential Revision: https://reviews.facebook.net/D48339
VitaliyLi pushed a commit to VitaliyLi/mysql-5.6 that referenced this issue Feb 9, 2017
…lumn family

Summary:
Fix issue facebook#42. Also issue facebook#43: Ranges on t.key > const are not handled
efficiently:

Make ha_rocksdb::index_read_map() do the right thing when invoked with
find_flag=HA_READ_KEY_OR_NEXT, both for forward and reverse column
families.

Detailed explanation of actions is provided in rocksdb-range-access.txt

Test Plan: mtr t/rocksdb_range.test, used gcov to check the new code is covered

Reviewers: maykov, hermanlee4, jonahcohen, jtolmer, yoshinorim

Reviewed By: yoshinorim

Differential Revision: https://reviews.facebook.net/D35103
VitaliyLi pushed a commit to VitaliyLi/mysql-5.6 that referenced this issue Feb 9, 2017
Summary:
Currently rocksdb_rate_limiter_bytes_per_sec can only be used to set up a rate limiter during
startup.  If the bytes_per_sec value needs to change after startup, that is not possible.  Change this
to allow for this possibility.  If no rate limiter was setup during startup you won't be able to start
and if one is set up during startup you won't be able to disable it.  But if one is set up during startup
the value for the bytes_per_sync will be changeable

Issue facebook#43 (facebook#43)

Test Plan: MTR with expanded rocksdb_rate_limiter_bytes_per_sec_basic.test

Reviewers: maykov, yoshinorim, hermanlee4

Reviewed By: hermanlee4

Differential Revision: https://reviews.facebook.net/D48339
gunnarku pushed a commit to facebook/mysql-8.0 that referenced this issue Jul 21, 2017
Summary:
Currently rocksdb_rate_limiter_bytes_per_sec can only be used to set up a rate limiter during
startup.  If the bytes_per_sec value needs to change after startup, that is not possible.  Change this
to allow for this possibility.  If no rate limiter was setup during startup you won't be able to start
and if one is set up during startup you won't be able to disable it.  But if one is set up during startup
the value for the bytes_per_sync will be changeable

Issue mysql#43 (facebook/mysql-5.6#43)

Test Plan: MTR with expanded rocksdb_rate_limiter_bytes_per_sec_basic.test

Reviewers: maykov, yoshinorim, hermanlee4

Reviewed By: hermanlee4

Differential Revision: https://reviews.facebook.net/D48339
inikep pushed a commit to inikep/mysql-5.6 that referenced this issue Sep 16, 2020
…lumn family

Summary:
Fix issue facebook#42. Also issue facebook#43: Ranges on t.key > const are not handled
efficiently:

Make ha_rocksdb::index_read_map() do the right thing when invoked with
find_flag=HA_READ_KEY_OR_NEXT, both for forward and reverse column
families.

Detailed explanation of actions is provided in rocksdb-range-access.txt

Differential Revision: https://reviews.facebook.net/D35103

fbshipit-source-id: 48004e0
inikep pushed a commit to inikep/mysql-5.6 that referenced this issue Sep 16, 2020
Summary:
Currently rocksdb_rate_limiter_bytes_per_sec can only be used to set up a rate limiter during
startup.  If the bytes_per_sec value needs to change after startup, that is not possible.  Change this
to allow for this possibility.  If no rate limiter was setup during startup you won't be able to start
and if one is set up during startup you won't be able to disable it.  But if one is set up during startup
the value for the bytes_per_sync will be changeable

Issue facebook#43 (facebook#43)

Differential Revision: https://reviews.facebook.net/D48339

fbshipit-source-id: 274226e
inikep pushed a commit to inikep/mysql-5.6 that referenced this issue Oct 5, 2020
…lumn family

Summary:
Fix issue facebook#42. Also issue facebook#43: Ranges on t.key > const are not handled
efficiently:

Make ha_rocksdb::index_read_map() do the right thing when invoked with
find_flag=HA_READ_KEY_OR_NEXT, both for forward and reverse column
families.

Detailed explanation of actions is provided in rocksdb-range-access.txt

Differential Revision: https://reviews.facebook.net/D35103

fbshipit-source-id: 48004e0
inikep pushed a commit to inikep/mysql-5.6 that referenced this issue Oct 5, 2020
Summary:
Currently rocksdb_rate_limiter_bytes_per_sec can only be used to set up a rate limiter during
startup.  If the bytes_per_sec value needs to change after startup, that is not possible.  Change this
to allow for this possibility.  If no rate limiter was setup during startup you won't be able to start
and if one is set up during startup you won't be able to disable it.  But if one is set up during startup
the value for the bytes_per_sync will be changeable

Issue facebook#43 (facebook#43)

Differential Revision: https://reviews.facebook.net/D48339

fbshipit-source-id: 274226e
inikep pushed a commit to inikep/mysql-5.6 that referenced this issue Nov 11, 2020
…lumn family

Summary:
Fix issue facebook#42. Also issue facebook#43: Ranges on t.key > const are not handled
efficiently:

Make ha_rocksdb::index_read_map() do the right thing when invoked with
find_flag=HA_READ_KEY_OR_NEXT, both for forward and reverse column
families.

Detailed explanation of actions is provided in rocksdb-range-access.txt

Differential Revision: https://reviews.facebook.net/D35103

fbshipit-source-id: 48004e0
inikep pushed a commit to inikep/mysql-5.6 that referenced this issue Nov 11, 2020
Summary:
Currently rocksdb_rate_limiter_bytes_per_sec can only be used to set up a rate limiter during
startup.  If the bytes_per_sec value needs to change after startup, that is not possible.  Change this
to allow for this possibility.  If no rate limiter was setup during startup you won't be able to start
and if one is set up during startup you won't be able to disable it.  But if one is set up during startup
the value for the bytes_per_sync will be changeable

Issue facebook#43 (facebook#43)

Differential Revision: https://reviews.facebook.net/D48339

fbshipit-source-id: 274226e
inikep pushed a commit to inikep/mysql-5.6 that referenced this issue Mar 11, 2021
…lumn family

Summary:
Fix issue facebook#42. Also issue facebook#43: Ranges on t.key > const are not handled
efficiently:

Make ha_rocksdb::index_read_map() do the right thing when invoked with
find_flag=HA_READ_KEY_OR_NEXT, both for forward and reverse column
families.

Detailed explanation of actions is provided in rocksdb-range-access.txt

Differential Revision: https://reviews.facebook.net/D35103

fbshipit-source-id: 7ed432226c3
inikep pushed a commit to inikep/mysql-5.6 that referenced this issue Mar 11, 2021
Summary:
Currently rocksdb_rate_limiter_bytes_per_sec can only be used to set up a rate limiter during
startup.  If the bytes_per_sec value needs to change after startup, that is not possible.  Change this
to allow for this possibility.  If no rate limiter was setup during startup you won't be able to start
and if one is set up during startup you won't be able to disable it.  But if one is set up during startup
the value for the bytes_per_sync will be changeable

Issue facebook#43 (facebook#43)

Differential Revision: https://reviews.facebook.net/D48339

fbshipit-source-id: 1a1e8075190
inikep pushed a commit to inikep/mysql-5.6 that referenced this issue Aug 16, 2021
…lumn family

Summary:
Fix issue facebook#42. Also issue facebook#43: Ranges on t.key > const are not handled
efficiently:

Make ha_rocksdb::index_read_map() do the right thing when invoked with
find_flag=HA_READ_KEY_OR_NEXT, both for forward and reverse column
families.

Detailed explanation of actions is provided in rocksdb-range-access.txt

Differential Revision: https://reviews.facebook.net/D35103

fbshipit-source-id: 7ed432226c3
inikep pushed a commit to inikep/mysql-5.6 that referenced this issue Aug 16, 2021
Summary:
Currently rocksdb_rate_limiter_bytes_per_sec can only be used to set up a rate limiter during
startup.  If the bytes_per_sec value needs to change after startup, that is not possible.  Change this
to allow for this possibility.  If no rate limiter was setup during startup you won't be able to start
and if one is set up during startup you won't be able to disable it.  But if one is set up during startup
the value for the bytes_per_sync will be changeable

Issue facebook#43 (facebook#43)

Differential Revision: https://reviews.facebook.net/D48339

fbshipit-source-id: 1a1e8075190
inikep pushed a commit to inikep/mysql-5.6 that referenced this issue Aug 30, 2021
…lumn family

Summary:
Fix issue facebook#42. Also issue facebook#43: Ranges on t.key > const are not handled
efficiently:

Make ha_rocksdb::index_read_map() do the right thing when invoked with
find_flag=HA_READ_KEY_OR_NEXT, both for forward and reverse column
families.

Detailed explanation of actions is provided in rocksdb-range-access.txt

Differential Revision: https://reviews.facebook.net/D35103

fbshipit-source-id: 7ed432226c3
inikep pushed a commit to inikep/mysql-5.6 that referenced this issue Aug 30, 2021
Summary:
Currently rocksdb_rate_limiter_bytes_per_sec can only be used to set up a rate limiter during
startup.  If the bytes_per_sec value needs to change after startup, that is not possible.  Change this
to allow for this possibility.  If no rate limiter was setup during startup you won't be able to start
and if one is set up during startup you won't be able to disable it.  But if one is set up during startup
the value for the bytes_per_sync will be changeable

Issue facebook#43 (facebook#43)

Differential Revision: https://reviews.facebook.net/D48339

fbshipit-source-id: 1a1e8075190
inikep pushed a commit to inikep/mysql-5.6 that referenced this issue Sep 1, 2021
…lumn family

Summary:
Fix issue facebook#42. Also issue facebook#43: Ranges on t.key > const are not handled
efficiently:

Make ha_rocksdb::index_read_map() do the right thing when invoked with
find_flag=HA_READ_KEY_OR_NEXT, both for forward and reverse column
families.

Detailed explanation of actions is provided in rocksdb-range-access.txt

Differential Revision: https://reviews.facebook.net/D35103

fbshipit-source-id: 7ed432226c3
inikep pushed a commit to inikep/mysql-5.6 that referenced this issue Sep 1, 2021
Summary:
Currently rocksdb_rate_limiter_bytes_per_sec can only be used to set up a rate limiter during
startup.  If the bytes_per_sec value needs to change after startup, that is not possible.  Change this
to allow for this possibility.  If no rate limiter was setup during startup you won't be able to start
and if one is set up during startup you won't be able to disable it.  But if one is set up during startup
the value for the bytes_per_sync will be changeable

Issue facebook#43 (facebook#43)

Differential Revision: https://reviews.facebook.net/D48339

fbshipit-source-id: 1a1e8075190
inikep pushed a commit to inikep/mysql-5.6 that referenced this issue Sep 2, 2021
…lumn family

Summary:
Fix issue facebook#42. Also issue facebook#43: Ranges on t.key > const are not handled
efficiently:

Make ha_rocksdb::index_read_map() do the right thing when invoked with
find_flag=HA_READ_KEY_OR_NEXT, both for forward and reverse column
families.

Detailed explanation of actions is provided in rocksdb-range-access.txt

Differential Revision: https://reviews.facebook.net/D35103

fbshipit-source-id: 7ed432226c3
inikep pushed a commit to inikep/mysql-5.6 that referenced this issue Sep 2, 2021
Summary:
Currently rocksdb_rate_limiter_bytes_per_sec can only be used to set up a rate limiter during
startup.  If the bytes_per_sec value needs to change after startup, that is not possible.  Change this
to allow for this possibility.  If no rate limiter was setup during startup you won't be able to start
and if one is set up during startup you won't be able to disable it.  But if one is set up during startup
the value for the bytes_per_sync will be changeable

Issue facebook#43 (facebook#43)

Differential Revision: https://reviews.facebook.net/D48339

fbshipit-source-id: 1a1e8075190
inikep pushed a commit to inikep/mysql-5.6 that referenced this issue Jan 17, 2022
…lumn family

Summary:
Fix issue facebook#42. Also issue facebook#43: Ranges on t.key > const are not handled
efficiently:

Make ha_rocksdb::index_read_map() do the right thing when invoked with
find_flag=HA_READ_KEY_OR_NEXT, both for forward and reverse column
families.

Detailed explanation of actions is provided in rocksdb-range-access.txt

Differential Revision: https://reviews.facebook.net/D35103
inikep pushed a commit to inikep/mysql-5.6 that referenced this issue Jan 17, 2022
Summary:
Currently rocksdb_rate_limiter_bytes_per_sec can only be used to set up a rate limiter during
startup.  If the bytes_per_sec value needs to change after startup, that is not possible.  Change this
to allow for this possibility.  If no rate limiter was setup during startup you won't be able to start
and if one is set up during startup you won't be able to disable it.  But if one is set up during startup
the value for the bytes_per_sync will be changeable

Issue facebook#43 (facebook#43)

Differential Revision: https://reviews.facebook.net/D48339
ldonoso pushed a commit to ldonoso/percona-server that referenced this issue Mar 15, 2022
Summary:
Currently rocksdb_rate_limiter_bytes_per_sec can only be used to set up a rate limiter during
startup.  If the bytes_per_sec value needs to change after startup, that is not possible.  Change this
to allow for this possibility.  If no rate limiter was setup during startup you won't be able to start
and if one is set up during startup you won't be able to disable it.  But if one is set up during startup
the value for the bytes_per_sync will be changeable

Issue percona#43 (facebook/mysql-5.6#43)

Differential Revision: https://reviews.facebook.net/D48339
inikep pushed a commit to inikep/mysql-5.6 that referenced this issue Apr 26, 2022
…lumn family

Summary:
Fix issue facebook#42. Also issue facebook#43: Ranges on t.key > const are not handled
efficiently:

Make ha_rocksdb::index_read_map() do the right thing when invoked with
find_flag=HA_READ_KEY_OR_NEXT, both for forward and reverse column
families.

Detailed explanation of actions is provided in rocksdb-range-access.txt

Differential Revision: https://reviews.facebook.net/D35103
inikep pushed a commit to inikep/mysql-5.6 that referenced this issue Apr 26, 2022
Summary:
Currently rocksdb_rate_limiter_bytes_per_sec can only be used to set up a rate limiter during
startup.  If the bytes_per_sec value needs to change after startup, that is not possible.  Change this
to allow for this possibility.  If no rate limiter was setup during startup you won't be able to start
and if one is set up during startup you won't be able to disable it.  But if one is set up during startup
the value for the bytes_per_sync will be changeable

Issue facebook#43 (facebook#43)

Differential Revision: https://reviews.facebook.net/D48339
inikep pushed a commit to inikep/mysql-5.6 that referenced this issue May 20, 2022
Summary:
Currently rocksdb_rate_limiter_bytes_per_sec can only be used to set up a rate limiter during
startup.  If the bytes_per_sec value needs to change after startup, that is not possible.  Change this
to allow for this possibility.  If no rate limiter was setup during startup you won't be able to start
and if one is set up during startup you won't be able to disable it.  But if one is set up during startup
the value for the bytes_per_sync will be changeable

Issue facebook#43 (facebook#43)

Differential Revision: https://reviews.facebook.net/D48339
laurynas-biveinis pushed a commit to laurynas-biveinis/mysql-5.6 that referenced this issue Aug 11, 2022
…lumn family

Summary:
Fix issue facebook#42. Also issue facebook#43: Ranges on t.key > const are not handled
efficiently:

Make ha_rocksdb::index_read_map() do the right thing when invoked with
find_flag=HA_READ_KEY_OR_NEXT, both for forward and reverse column
families.

Detailed explanation of actions is provided in rocksdb-range-access.txt

Differential Revision: https://reviews.facebook.net/D35103
laurynas-biveinis pushed a commit to laurynas-biveinis/mysql-5.6 that referenced this issue Aug 11, 2022
Summary:
Currently rocksdb_rate_limiter_bytes_per_sec can only be used to set up a rate limiter during
startup.  If the bytes_per_sec value needs to change after startup, that is not possible.  Change this
to allow for this possibility.  If no rate limiter was setup during startup you won't be able to start
and if one is set up during startup you won't be able to disable it.  But if one is set up during startup
the value for the bytes_per_sync will be changeable

Issue facebook#43 (facebook#43)

Differential Revision: https://reviews.facebook.net/D48339
inikep pushed a commit to inikep/mysql-5.6 that referenced this issue Mar 28, 2023
Summary:
Currently rocksdb_rate_limiter_bytes_per_sec can only be used to set up a rate limiter during
startup.  If the bytes_per_sec value needs to change after startup, that is not possible.  Change this
to allow for this possibility.  If no rate limiter was setup during startup you won't be able to start
and if one is set up during startup you won't be able to disable it.  But if one is set up during startup
the value for the bytes_per_sync will be changeable

Issue facebook#43 (facebook#43)

Differential Revision: https://reviews.facebook.net/D48339
inikep pushed a commit to inikep/mysql-5.6 that referenced this issue Jun 1, 2023
…lumn family

Summary:
Fix issue facebook#42. Also issue facebook#43: Ranges on t.key > const are not handled
efficiently:

Make ha_rocksdb::index_read_map() do the right thing when invoked with
find_flag=HA_READ_KEY_OR_NEXT, both for forward and reverse column
families.

Detailed explanation of actions is provided in rocksdb-range-access.txt

Differential Revision: https://reviews.facebook.net/D35103
inikep pushed a commit to inikep/mysql-5.6 that referenced this issue Jun 1, 2023
Summary:
Currently rocksdb_rate_limiter_bytes_per_sec can only be used to set up a rate limiter during
startup.  If the bytes_per_sec value needs to change after startup, that is not possible.  Change this
to allow for this possibility.  If no rate limiter was setup during startup you won't be able to start
and if one is set up during startup you won't be able to disable it.  But if one is set up during startup
the value for the bytes_per_sync will be changeable

Issue facebook#43 (facebook#43)

Differential Revision: https://reviews.facebook.net/D48339
inikep pushed a commit to inikep/mysql-5.6 that referenced this issue Jun 14, 2023
…lumn family

Summary:
Fix issue facebook#42. Also issue facebook#43: Ranges on t.key > const are not handled
efficiently:

Make ha_rocksdb::index_read_map() do the right thing when invoked with
find_flag=HA_READ_KEY_OR_NEXT, both for forward and reverse column
families.

Detailed explanation of actions is provided in rocksdb-range-access.txt

Differential Revision: https://reviews.facebook.net/D35103
inikep pushed a commit to inikep/mysql-5.6 that referenced this issue Jun 14, 2023
Summary:
Currently rocksdb_rate_limiter_bytes_per_sec can only be used to set up a rate limiter during
startup.  If the bytes_per_sec value needs to change after startup, that is not possible.  Change this
to allow for this possibility.  If no rate limiter was setup during startup you won't be able to start
and if one is set up during startup you won't be able to disable it.  But if one is set up during startup
the value for the bytes_per_sync will be changeable

Issue facebook#43 (facebook#43)

Differential Revision: https://reviews.facebook.net/D48339
inikep pushed a commit to inikep/percona-server that referenced this issue Apr 9, 2024
Summary:
Currently rocksdb_rate_limiter_bytes_per_sec can only be used to set up a rate limiter during
startup.  If the bytes_per_sec value needs to change after startup, that is not possible.  Change this
to allow for this possibility.  If no rate limiter was setup during startup you won't be able to start
and if one is set up during startup you won't be able to disable it.  But if one is set up during startup
the value for the bytes_per_sync will be changeable

Issue percona#43 (facebook/mysql-5.6#43)

Differential Revision: https://reviews.facebook.net/D48339
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

5 participants