You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

132 lines
3.7 KiB

  1. #
  2. # Test of function defaults on replicated tables.
  3. #
  4. include/master-slave.inc
  5. [connection master]
  6. connection master
  7. SET TIME_ZONE="+10:30";
  8. SET TIMESTAMP=123456.789123;
  9. SELECT CURRENT_TIMESTAMP;
  10. CURRENT_TIMESTAMP
  11. 1970-01-02 20:47:36
  12. connection slave
  13. SET TIME_ZONE="+00:00";
  14. SET TIMESTAMP=987654321.123456;
  15. SELECT CURRENT_TIMESTAMP;
  16. CURRENT_TIMESTAMP
  17. 2001-04-19 04:25:21
  18. connection master
  19. CREATE TABLE t1 (
  20. a TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
  21. b TIMESTAMP(1) NOT NULL DEFAULT CURRENT_TIMESTAMP(1),
  22. c TIMESTAMP(2) NOT NULL DEFAULT CURRENT_TIMESTAMP(2),
  23. d TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
  24. e TIMESTAMP(4) NOT NULL DEFAULT CURRENT_TIMESTAMP(4),
  25. f TIMESTAMP(5) NOT NULL DEFAULT CURRENT_TIMESTAMP(5),
  26. g TIMESTAMP(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6),
  27. h DATETIME DEFAULT CURRENT_TIMESTAMP,
  28. i DATETIME(1) DEFAULT CURRENT_TIMESTAMP(1),
  29. j DATETIME(2) DEFAULT CURRENT_TIMESTAMP(2),
  30. k DATETIME(3) DEFAULT CURRENT_TIMESTAMP(3),
  31. l DATETIME(4) DEFAULT CURRENT_TIMESTAMP(4),
  32. m DATETIME(5) DEFAULT CURRENT_TIMESTAMP(5),
  33. n DATETIME(6) DEFAULT CURRENT_TIMESTAMP(6),
  34. o INT
  35. );
  36. INSERT INTO t1 ( o ) VALUES ( 1 );
  37. CREATE TABLE t2 (
  38. a TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00:00' ON UPDATE CURRENT_TIMESTAMP,
  39. b TIMESTAMP(1) NOT NULL DEFAULT '0000-00-00 00:00:00' ON UPDATE CURRENT_TIMESTAMP(1),
  40. c TIMESTAMP(2) NOT NULL DEFAULT '0000-00-00 00:00:00' ON UPDATE CURRENT_TIMESTAMP(2),
  41. d TIMESTAMP(3) NOT NULL DEFAULT '0000-00-00 00:00:00' ON UPDATE CURRENT_TIMESTAMP(3),
  42. e TIMESTAMP(4) NOT NULL DEFAULT '0000-00-00 00:00:00' ON UPDATE CURRENT_TIMESTAMP(4),
  43. f TIMESTAMP(5) NOT NULL DEFAULT '0000-00-00 00:00:00' ON UPDATE CURRENT_TIMESTAMP(5),
  44. g TIMESTAMP(6) NOT NULL DEFAULT '0000-00-00 00:00:00' ON UPDATE CURRENT_TIMESTAMP(6),
  45. h DATETIME ON UPDATE CURRENT_TIMESTAMP,
  46. i DATETIME(1) ON UPDATE CURRENT_TIMESTAMP(1),
  47. j DATETIME(2) ON UPDATE CURRENT_TIMESTAMP(2),
  48. k DATETIME(3) ON UPDATE CURRENT_TIMESTAMP(3),
  49. l DATETIME(4) ON UPDATE CURRENT_TIMESTAMP(4),
  50. m DATETIME(5) ON UPDATE CURRENT_TIMESTAMP(5),
  51. n DATETIME(6) ON UPDATE CURRENT_TIMESTAMP(6),
  52. o INT
  53. );
  54. INSERT INTO t2 ( o ) VALUES ( 1 );
  55. sync_slave_with_master
  56. connection slave
  57. SELECT * FROM t1;
  58. a 1970-01-02 10:17:36
  59. b 1970-01-02 10:17:36.7
  60. c 1970-01-02 10:17:36.78
  61. d 1970-01-02 10:17:36.789
  62. e 1970-01-02 10:17:36.7891
  63. f 1970-01-02 10:17:36.78912
  64. g 1970-01-02 10:17:36.789123
  65. h 1970-01-02 20:47:36
  66. i 1970-01-02 20:47:36.7
  67. j 1970-01-02 20:47:36.78
  68. k 1970-01-02 20:47:36.789
  69. l 1970-01-02 20:47:36.7891
  70. m 1970-01-02 20:47:36.78912
  71. n 1970-01-02 20:47:36.789123
  72. o 1
  73. SELECT * FROM t2;
  74. a 0000-00-00 00:00:00
  75. b 0000-00-00 00:00:00.0
  76. c 0000-00-00 00:00:00.00
  77. d 0000-00-00 00:00:00.000
  78. e 0000-00-00 00:00:00.0000
  79. f 0000-00-00 00:00:00.00000
  80. g 0000-00-00 00:00:00.000000
  81. h NULL
  82. i NULL
  83. j NULL
  84. k NULL
  85. l NULL
  86. m NULL
  87. n NULL
  88. o 1
  89. connection master
  90. SET TIMESTAMP=1234567890.123456;
  91. SELECT CURRENT_TIMESTAMP;
  92. CURRENT_TIMESTAMP
  93. 2009-02-14 10:01:30
  94. UPDATE t1 SET o = 2;
  95. UPDATE t2 SET o = 2;
  96. sync_slave_with_master
  97. connection slave
  98. SELECT * FROM t1;
  99. a 1970-01-02 10:17:36
  100. b 1970-01-02 10:17:36.7
  101. c 1970-01-02 10:17:36.78
  102. d 1970-01-02 10:17:36.789
  103. e 1970-01-02 10:17:36.7891
  104. f 1970-01-02 10:17:36.78912
  105. g 1970-01-02 10:17:36.789123
  106. h 1970-01-02 20:47:36
  107. i 1970-01-02 20:47:36.7
  108. j 1970-01-02 20:47:36.78
  109. k 1970-01-02 20:47:36.789
  110. l 1970-01-02 20:47:36.7891
  111. m 1970-01-02 20:47:36.78912
  112. n 1970-01-02 20:47:36.789123
  113. o 2
  114. SELECT * FROM t2;
  115. a 2009-02-13 23:31:30
  116. b 2009-02-13 23:31:30.1
  117. c 2009-02-13 23:31:30.12
  118. d 2009-02-13 23:31:30.123
  119. e 2009-02-13 23:31:30.1234
  120. f 2009-02-13 23:31:30.12345
  121. g 2009-02-13 23:31:30.123456
  122. h 2009-02-14 10:01:30
  123. i 2009-02-14 10:01:30.1
  124. j 2009-02-14 10:01:30.12
  125. k 2009-02-14 10:01:30.123
  126. l 2009-02-14 10:01:30.1234
  127. m 2009-02-14 10:01:30.12345
  128. n 2009-02-14 10:01:30.123456
  129. o 2
  130. connection master
  131. DROP TABLE t1, t2;
  132. include/rpl_end.inc