summaryrefslogtreecommitdiff
path: root/storage/ndb/ndbapi-examples/ndbapi_scan/ndbapi_scan.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'storage/ndb/ndbapi-examples/ndbapi_scan/ndbapi_scan.cpp')
-rw-r--r--storage/ndb/ndbapi-examples/ndbapi_scan/ndbapi_scan.cpp42
1 files changed, 31 insertions, 11 deletions
diff --git a/storage/ndb/ndbapi-examples/ndbapi_scan/ndbapi_scan.cpp b/storage/ndb/ndbapi-examples/ndbapi_scan/ndbapi_scan.cpp
index 69ffd99b8ca..8f1057f2531 100644
--- a/storage/ndb/ndbapi-examples/ndbapi_scan/ndbapi_scan.cpp
+++ b/storage/ndb/ndbapi-examples/ndbapi_scan/ndbapi_scan.cpp
@@ -114,9 +114,19 @@ struct Car
};
/**
+ * Function to drop table
+ */
+void drop_table(MYSQL &mysql)
+{
+ if (mysql_query(&mysql, "DROP TABLE GARAGE"))
+ MYSQLERROR(mysql);
+}
+
+
+/**
* Function to create table
*/
-int create_table(MYSQL &mysql)
+void create_table(MYSQL &mysql)
{
while (mysql_query(&mysql,
"CREATE TABLE"
@@ -131,16 +141,14 @@ int create_table(MYSQL &mysql)
MYSQLERROR(mysql);
std::cout << "MySQL Cluster already has example table: GARAGE. "
<< "Dropping it..." << std::endl;
- /**************
- * Drop table *
- **************/
- if (mysql_query(&mysql, "DROP TABLE GARAGE"))
- MYSQLERROR(mysql);
+ /******************
+ * Recreate table *
+ ******************/
+ drop_table(mysql);
+ create_table(mysql);
}
- return 1;
}
-
int populate(Ndb * myNdb)
{
int i;
@@ -721,8 +729,15 @@ int scan_print(Ndb * myNdb)
}
-int main()
+int main(int argc, char** argv)
{
+ if (argc != 3)
+ {
+ std::cout << "Arguments are <socket mysqld> <connect_string cluster>.\n";
+ exit(-1);
+ }
+ char * mysqld_sock = argv[1];
+ const char *connectstring = argv[2];
ndb_init();
MYSQL mysql;
@@ -735,7 +750,7 @@ int main()
exit(-1);
}
if ( !mysql_real_connect(&mysql, "localhost", "root", "", "",
- 3306, "/tmp/mysql.sock", 0) )
+ 0, mysqld_sock, 0) )
MYSQLERROR(mysql);
mysql_query(&mysql, "CREATE DATABASE TEST_DB");
@@ -748,7 +763,7 @@ int main()
* Connect to ndb cluster *
**************************************************************/
- Ndb_cluster_connection cluster_connection;
+ Ndb_cluster_connection cluster_connection(connectstring);
if (cluster_connection.connect(4, 5, 1))
{
std::cout << "Unable to connect to cluster within 30 secs." << std::endl;
@@ -821,5 +836,10 @@ int main()
if(scan_print(&myNdb) > 0)
std::cout << "scan_print: Success!" << std::endl << std::endl;
+ /**
+ * Drop table
+ */
+ drop_table(mysql);
+
return 0;
}