[Maria-discuss] R: transactions and UNLOCK TABLES

2014-09-23 Thread Federico Razzoli
Let's make the snippet simpler. Only one table, non-transactional, please look 
at the difference from what docs say and the real behaviour. If one could 
explain what UNLOCK TABLES exactly does, it would be great.

MariaDB [test] SELECT @@in_transaction, @@autocommit;
+--+--+
| @@in_transaction | @@autocommit |
+--+--+
|0 |1 |
+--+--+
1 row in set (0.00 sec)

MariaDB [test] CREATE OR REPLACE TABLE t (c INT) ENGINE = MEMORY;
Query OK, 0 rows affected (0.12 sec)

MariaDB [test] LOCK TABLE t WRITE;
Query OK, 0 rows affected (0.00 sec)

MariaDB [test] START TRANSACTION;
Query OK, 0 rows affected (0.00 sec)

MariaDB [test] INSERT INTO t VALUES (1);
Query OK, 1 row affected (0.01 sec)

MariaDB [test] UNLOCK TABLES;
Query OK, 0 rows affected (0.00 sec)

MariaDB [test] SELECT @@in_transaction;
+--+
| @@in_transaction |
+--+
|1 |
+--+
1 row in set (0.00 sec)


Regards
Federico


___
Mailing list: https://launchpad.net/~maria-discuss
Post to : maria-discuss@lists.launchpad.net
Unsubscribe : https://launchpad.net/~maria-discuss
More help   : https://help.launchpad.net/ListHelp


Re: [Maria-discuss] R: transactions and UNLOCK TABLES

2014-09-23 Thread Elena Stepanova

Hi Federico,

On 23.09.2014 12:50, Federico Razzoli wrote:

Let's make the snippet simpler. Only one table, non-transactional, please look 
at the difference from what docs say and the real behaviour. If one could 
explain what UNLOCK TABLES exactly does, it would be great.

MariaDB [test] SELECT @@in_transaction, @@autocommit;
+--+--+
| @@in_transaction | @@autocommit |
+--+--+
|0 |1 |
+--+--+
1 row in set (0.00 sec)

MariaDB [test] CREATE OR REPLACE TABLE t (c INT) ENGINE = MEMORY;
Query OK, 0 rows affected (0.12 sec)

MariaDB [test] LOCK TABLE t WRITE;
Query OK, 0 rows affected (0.00 sec)

MariaDB [test] START TRANSACTION;
Query OK, 0 rows affected (0.00 sec)


Beginning a transaction causes table locks acquired with LOCK TABLES to 
be released, as though you had executed UNLOCK TABLES.


http://dev.mysql.com/doc/refman/5.5/en/commit.html



MariaDB [test] INSERT INTO t VALUES (1);
Query OK, 1 row affected (0.01 sec)

MariaDB [test] UNLOCK TABLES;
Query OK, 0 rows affected (0.00 sec)


So, this UNLOCK is not actually doing anything.

Regards,
Elena



MariaDB [test] SELECT @@in_transaction;
+--+
| @@in_transaction |
+--+
|1 |
+--+
1 row in set (0.00 sec)


Regards
Federico


___
Mailing list: https://launchpad.net/~maria-discuss
Post to : maria-discuss@lists.launchpad.net
Unsubscribe : https://launchpad.net/~maria-discuss
More help   : https://help.launchpad.net/ListHelp



___
Mailing list: https://launchpad.net/~maria-discuss
Post to : maria-discuss@lists.launchpad.net
Unsubscribe : https://launchpad.net/~maria-discuss
More help   : https://help.launchpad.net/ListHelp


Re: [Maria-discuss] R: transactions and UNLOCK TABLES

2014-09-23 Thread Federico Razzoli
Thank you for your clarification, Elena. Based on this information, I find the 
MySQL manual confusing, so I have reported a bug:

http://bugs.mysql.com/bug.php?id=74033

Unless it turns out that I'm still missing something, I will also check the kb.

Regards
Federico



Mar 23/9/14, Elena Stepanova ele...@montyprogram.com ha scritto:

 Oggetto: Re: [Maria-discuss] R: transactions and UNLOCK TABLES
 A: Federico Razzoli federico_...@yahoo.it, 
maria-discuss@lists.launchpad.net
 Data: Martedì 23 settembre 2014, 11:51
 
 Hi Federico,
 
 On 23.09.2014 12:50, Federico
 Razzoli wrote:
  Let's make the
 snippet simpler. Only one table, non-transactional, please
 look at the difference from what docs say and the real
 behaviour. If one could explain what UNLOCK TABLES exactly
 does, it would be great.
 
  MariaDB [test] SELECT
 @@in_transaction, @@autocommit;
 
 +--+--+
  |
 @@in_transaction | @@autocommit |
 
 +--+--+
  | 
               0 |            1 |
  +--+--+
  1 row in set (0.00 sec)
 
  MariaDB [test]
 CREATE OR REPLACE TABLE t (c INT) ENGINE = MEMORY;
  Query OK, 0 rows affected (0.12 sec)
 
  MariaDB [test]
 LOCK TABLE t WRITE;
  Query OK, 0 rows
 affected (0.00 sec)
 
  MariaDB [test] START TRANSACTION;
  Query OK, 0 rows affected (0.00 sec)
 
 Beginning a transaction
 causes table locks acquired with LOCK TABLES to 
 be released, as though you had executed UNLOCK
 TABLES.
 
 http://dev.mysql.com/doc/refman/5.5/en/commit.html
 
 
 
 MariaDB [test] INSERT INTO t VALUES (1);
  Query OK, 1 row affected (0.01 sec)
 
  MariaDB [test]
 UNLOCK TABLES;
  Query OK, 0 rows
 affected (0.00 sec)
 
 So,
 this UNLOCK is not actually doing anything.
 
 Regards,
 Elena
 
 
  MariaDB [test] SELECT
 @@in_transaction;
 
 +--+
  | @@in_transaction
 |
  +--+
  |                1 |
  +--+
 
 1 row in set (0.00 sec)
 
 
  Regards
  Federico
 
 
 
 ___
  Mailing list: https://launchpad.net/~maria-discuss
  Post to     : maria-discuss@lists.launchpad.net
  Unsubscribe : https://launchpad.net/~maria-discuss
  More help   : https://help.launchpad.net/ListHelp
 
 

___
Mailing list: https://launchpad.net/~maria-discuss
Post to : maria-discuss@lists.launchpad.net
Unsubscribe : https://launchpad.net/~maria-discuss
More help   : https://help.launchpad.net/ListHelp


Re: [Maria-discuss] R: transactions and UNLOCK TABLES

2014-09-23 Thread Roberto Spadim
+1 =)

mysql manual sometimes don't help, that's why i really prefer mariadb kb

i think that many years ago mysql implement this nontransactional like
locks to innodb just to allow guys porting from myisam to innodb using old
apps without rewriting the lock/unlock to begin/commit
if you are using innodb as transactional you will never use lock/unlock, in
my opnion maybe you probably only use locks at filesystem or use get_lock()
mysql function or any other IPC function, but be carefull about scalability
i don't know what's the 'best' lock server today, all shared locks that i
use today i use over a filesystem and network (nfs/smb/others network file
system), if get_lock work with galera maybe i could get a try


2014-09-23 6:51 GMT-03:00 Elena Stepanova ele...@montyprogram.com:

 Hi Federico,

 On 23.09.2014 12:50, Federico Razzoli wrote:

 Let's make the snippet simpler. Only one table, non-transactional, please
 look at the difference from what docs say and the real behaviour. If one
 could explain what UNLOCK TABLES exactly does, it would be great.

 MariaDB [test] SELECT @@in_transaction, @@autocommit;
 +--+--+
 | @@in_transaction | @@autocommit |
 +--+--+
 |0 |1 |
 +--+--+
 1 row in set (0.00 sec)

 MariaDB [test] CREATE OR REPLACE TABLE t (c INT) ENGINE = MEMORY;
 Query OK, 0 rows affected (0.12 sec)

 MariaDB [test] LOCK TABLE t WRITE;
 Query OK, 0 rows affected (0.00 sec)

 MariaDB [test] START TRANSACTION;
 Query OK, 0 rows affected (0.00 sec)


 Beginning a transaction causes table locks acquired with LOCK TABLES to
 be released, as though you had executed UNLOCK TABLES.

 http://dev.mysql.com/doc/refman/5.5/en/commit.html


 MariaDB [test] INSERT INTO t VALUES (1);
 Query OK, 1 row affected (0.01 sec)

 MariaDB [test] UNLOCK TABLES;
 Query OK, 0 rows affected (0.00 sec)


 So, this UNLOCK is not actually doing anything.

 Regards,
 Elena



 MariaDB [test] SELECT @@in_transaction;
 +--+
 | @@in_transaction |
 +--+
 |1 |
 +--+
 1 row in set (0.00 sec)


 Regards
 Federico


 ___
 Mailing list: https://launchpad.net/~maria-discuss
 Post to : maria-discuss@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~maria-discuss
 More help   : https://help.launchpad.net/ListHelp


 ___
 Mailing list: https://launchpad.net/~maria-discuss
 Post to : maria-discuss@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~maria-discuss
 More help   : https://help.launchpad.net/ListHelp




-- 
Roberto Spadim
SPAEmpresarial
Eng. Automação e Controle
___
Mailing list: https://launchpad.net/~maria-discuss
Post to : maria-discuss@lists.launchpad.net
Unsubscribe : https://launchpad.net/~maria-discuss
More help   : https://help.launchpad.net/ListHelp


Re: [Maria-discuss] R: transactions and UNLOCK TABLES

2014-09-23 Thread Roberto Spadim
nice, i will include the information about lock innodb tables to your bug
request just to help a better explain at mysql docs

2014-09-23 8:50 GMT-03:00 Federico Razzoli federico_...@yahoo.it:

 Thank you for your clarification, Elena. Based on this information, I find
 the MySQL manual confusing, so I have reported a bug:

 http://bugs.mysql.com/bug.php?id=74033

 Unless it turns out that I'm still missing something, I will also check
 the kb.

 Regards
 Federico


 
 Mar 23/9/14, Elena Stepanova ele...@montyprogram.com ha scritto:

  Oggetto: Re: [Maria-discuss] R: transactions and UNLOCK TABLES
  A: Federico Razzoli federico_...@yahoo.it,
 maria-discuss@lists.launchpad.net
  Data: Martedì 23 settembre 2014, 11:51

  Hi Federico,

  On 23.09.2014 12:50, Federico
  Razzoli wrote:
   Let's make the
  snippet simpler. Only one table, non-transactional, please
  look at the difference from what docs say and the real
  behaviour. If one could explain what UNLOCK TABLES exactly
  does, it would be great.
  
   MariaDB [test] SELECT
  @@in_transaction, @@autocommit;
  
  +--+--+
   |
  @@in_transaction | @@autocommit |
  
  +--+--+
   |
0 |1 |
   +--+--+
   1 row in set (0.00 sec)
  
   MariaDB [test]
  CREATE OR REPLACE TABLE t (c INT) ENGINE = MEMORY;
   Query OK, 0 rows affected (0.12 sec)
  
   MariaDB [test]
  LOCK TABLE t WRITE;
   Query OK, 0 rows
  affected (0.00 sec)
  
   MariaDB [test] START TRANSACTION;
   Query OK, 0 rows affected (0.00 sec)

  Beginning a transaction
  causes table locks acquired with LOCK TABLES to
  be released, as though you had executed UNLOCK
  TABLES.

  http://dev.mysql.com/doc/refman/5.5/en/commit.html

  
  
  MariaDB [test] INSERT INTO t VALUES (1);
   Query OK, 1 row affected (0.01 sec)
  
   MariaDB [test]
  UNLOCK TABLES;
   Query OK, 0 rows
  affected (0.00 sec)

  So,
  this UNLOCK is not actually doing anything.

  Regards,
  Elena

  
   MariaDB [test] SELECT
  @@in_transaction;
  
  +--+
   | @@in_transaction
  |
   +--+
   |1 |
   +--+
  
  1 row in set (0.00 sec)
  
  
   Regards
   Federico
  
  
  
  ___
   Mailing list: https://launchpad.net/~maria-discuss
   Post to : maria-discuss@lists.launchpad.net
   Unsubscribe : https://launchpad.net/~maria-discuss
   More help   : https://help.launchpad.net/ListHelp
  


 ___
 Mailing list: https://launchpad.net/~maria-discuss
 Post to : maria-discuss@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~maria-discuss
 More help   : https://help.launchpad.net/ListHelp




-- 
Roberto Spadim
SPAEmpresarial
Eng. Automação e Controle
___
Mailing list: https://launchpad.net/~maria-discuss
Post to : maria-discuss@lists.launchpad.net
Unsubscribe : https://launchpad.net/~maria-discuss
More help   : https://help.launchpad.net/ListHelp