maria-developers team mailing list archive
-
maria-developers team
-
Mailing list archive
-
Message #07614
Re: innodb-buffer-pool-instances confusion
Haha, this is the code in storage/innobase/handler/ha_innodb.cc:
3260 ▸ if (innobase_buffer_pool_instances == 0) {
3261 ▸ ▸ innobase_buffer_pool_instances = 8;
3262
3263 #if defined(__WIN__) && !defined(_WIN64)
3264 ▸ ▸ if (innobase_buffer_pool_size > 1331 * 1024 * 1024) {
3265 ▸ ▸ ▸ innobase_buffer_pool_instances
3266 ▸ ▸ ▸ ▸ = ut_min(MAX_BUFFER_POOLS,
3267 ▸ ▸ ▸ ▸ ▸ (long)
(innobase_buffer_pool_size
3268 ▸ ▸ ▸ ▸ ▸ / (128 * 1024 * 1024)));
3269 ▸ ▸ }
3270 #endif /* defined(__WIN__) && !defined(_WIN64) */
3271 ▸ }
So basically 0 means 8 unless you're on 32-bit Windows where it means one
per 128 MiB of buffer pool, but only if the buffer pool is bigger than 1.3
GiB.
Gotta love the lack of comments.
Basically 0 is the default for the actual parameters, but it's fixed up to
8 at runtime. So the --help output will show 0 even though it will end up
with 8 (or N). It's basically using 0 as a way to say "the user didn't
specify, so figure it out".
Regards,
Jeremy
On Wed, Aug 6, 2014 at 2:26 PM, Daniel Bartholomew <dbart@xxxxxxxxxxx>
wrote:
> I was chatting with some folks on IRC and someone pointed this out to me.
>
> On the "Upgrading From MariaDB 5.5 to MariaDB 10.0" page, it says that
> the new default value for innodb-buffer-pool-instances is '0':
>
> https://mariadb.com/kb/en/upgrading-from-mariadb-55-to-mariadb-100/
>
> And when I run the following, it says the default is indeed '0':
>
> mysqld --no-defaults --verbose --help | grep innodb-buffer-pool-instances
> ...
> innodb-buffer-pool-instances 0
>
>
> But when I'm in the client, I get the following:
>
> MariaDB [(none)]> select @@innodb_buffer_pool_instances;
> +--------------------------------+
> | @@innodb_buffer_pool_instances |
> +--------------------------------+
> | 8 |
> +--------------------------------+
>
> So when innodb-buffer-pool-instances is set to '0', does that mean the
> actual value is dynamic or calculated in some way based on my other
> settings?
>
> Just trying to understand what's going on, and once I do, use it to
> update the XtraDB/InnoDB buffer-pool page (which doesn't appear to
> have been updated for 10.0).
>
> https://mariadb.com/kb/en/xtradbinnodb-buffer-pool/
>
>
> Thanks!
>
> --
> Daniel Bartholomew, MariaDB Release Manager
> MariaDB | http://mariadb.com
>
> _______________________________________________
> Mailing list: https://launchpad.net/~maria-developers
> Post to : maria-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~maria-developers
> More help : https://help.launchpad.net/ListHelp
>
Follow ups
References