]> git.ipfire.org Git - thirdparty/kea.git/commitdiff
[master] Implemented schema upgrade for MySQL schema 4.0
authorThomas Markwalder <tmark@isc.org>
Tue, 13 Oct 2015 16:04:29 +0000 (12:04 -0400)
committerThomas Markwalder <tmark@isc.org>
Tue, 13 Oct 2015 16:04:29 +0000 (12:04 -0400)
    Merged in trac3967.

1  2 
configure.ac
src/bin/admin/scripts/mysql/Makefile.am
src/bin/admin/scripts/mysql/dhcpdb_create.mysql
src/bin/admin/tests/mysql_tests.sh.in

diff --cc configure.ac
index 9dbd0eedc0ddfcb13ca33eaa8e315ceaca66d878,9b2efe4b5d9c0b64189e0707a7aa9709b49a2a04..9b2efe4b5d9c0b64189e0707a7aa9709b49a2a04
mode 100755,100644..100755
index 419474510f36f287da453ec99164a47208cd85e1,d619977ac35d29a9b01a67459ad0b18ab9afabf6..d619977ac35d29a9b01a67459ad0b18ab9afabf6
mode 100755,100644..100755
index c30b463ffa2a57d133c3060f904631e44c7f3db7,f0cd7735076a2e5100aaf9a01e3a6608780843ae..f0cd7735076a2e5100aaf9a01e3a6608780843ae
mode 100755,100644..100755
index 6a29ad3a4f24331081a2ec72728c3a2a4a4212e3,bf02d1bd0361265ec4c65edbef3602e7923eb09a..b4d3ddeed368e64b715266a8c3745c08ec80dc09
mode 100755,100644..100755
@@@ -262,10 -257,38 +262,39 @@@ EO
      ERRCODE=$?
      assert_eq 0 $ERRCODE "dhcp6_options table is missing or broken. (returned status code %d, expected %d)"
  
 +    # Verify that it reports version 3.0.
+     #table: lease_state table added (upgrade 3.0 -> 4.0)
+     mysql -u$db_user -p$db_password $db_name >/dev/null 2>&1 <<EOF
+     SELECT state,name from lease_state;
+ EOF
+     ERRCODE=$?
+     assert_eq 0 $ERRCODE "dhcp6_options table is missing or broken. (returned status code %d, expected %d)"
+     #table: state column added to lease4 (upgrade 3.0 -> 4.0)
+     mysql -u$db_user -p$db_password $db_name >/dev/null 2>&1 <<EOF
+     SELECT state from lease4;
+ EOF
+     ERRCODE=$?
+     assert_eq 0 $ERRCODE "lease4 is missing state column. (returned status code %d, expected %d)"
+     #table: state column added to lease6 (upgrade 3.0 -> 4.0)
+     mysql -u$db_user -p$db_password $db_name >/dev/null 2>&1 <<EOF
+     SELECT state from lease6;
+ EOF
+     ERRCODE=$?
+     assert_eq 0 $ERRCODE "lease6 is missing state column. (returned status code %d, expected %d)"
+     #table: stored procedures for lease dumps added (upgrade 3.0 -> 4.0)
+     mysql -u$db_user -p$db_password $db_name >/dev/null 2>&1 <<EOF
+     call lease4DumpHeader(); call lease4DumpData(); call lease6DumpHeader(); call lease6DumpHeader();
+ EOF
+     ERRCODE=$?
+     assert_eq 0 $ERRCODE "lease dump stored procedures are missing or broken. (returned status code %d, expected %d)"
+     # Verify that it reports version 4.0.
      version=$(${keaadmin} lease-version mysql -u $db_user -p $db_password -n $db_name)
  
-     assert_str_eq "3.0" ${version} "Expected kea-admin to return %s, returned value was %s"
+     assert_str_eq "4.0" ${version} "Expected kea-admin to return %s, returned value was %s"
  
      # Let's wipe the whole database
      mysql_wipe