You are viewing a plain text version of this content. The canonical link for it is here.
Posted to olio-commits@incubator.apache.org by kl...@apache.org on 2009/10/10 00:38:07 UTC

svn commit: r823754 - in /incubator/olio/workload/java/trunk: bin/ src/org/apache/olio/workload/loader/

Author: klichong
Date: Sat Oct 10 00:38:06 2009
New Revision: 823754

URL: http://svn.apache.org/viewvc?rev=823754&view=rev
Log:
addendum to OLIO issue 133.  Fixed schema for auto-increment for each loader object, and edited schema file.

Modified:
    incubator/olio/workload/java/trunk/bin/schema.sql
    incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Address.java
    incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Attendees.java
    incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Comments.java
    incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Friends.java
    incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Invitation.java
    incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Person.java
    incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/SocialEvent.java
    incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Tag.java

Modified: incubator/olio/workload/java/trunk/bin/schema.sql
URL: http://svn.apache.org/viewvc/incubator/olio/workload/java/trunk/bin/schema.sql?rev=823754&r1=823753&r2=823754&view=diff
==============================================================================
--- incubator/olio/workload/java/trunk/bin/schema.sql (original)
+++ incubator/olio/workload/java/trunk/bin/schema.sql Sat Oct 10 00:38:06 2009
@@ -42,25 +42,20 @@
 SET @saved_cs_client     = @@character_set_client;
 SET character_set_client = utf8;
 CREATE TABLE `ADDRESS` (
-  `ADDRESSID` int(11) NOT NULL,
-  `STATE` varchar(255) DEFAULT NULL,
-  `COUNTRY` varchar(255) DEFAULT NULL,
+  `ADDRESSID` INTEGER NOT NULL AUTO_INCREMENT,
+  `STATE` varchar(25) DEFAULT NULL,
+  `COUNTRY` varchar(55) DEFAULT NULL,
   `LATITUDE` double DEFAULT NULL,
   `LONGITUDE` double DEFAULT NULL,
-  `CITY` varchar(255) DEFAULT NULL,
-  `ZIP` varchar(255) DEFAULT NULL,
-  `STREET1` varchar(255) DEFAULT NULL,
-  `STREET2` varchar(255) DEFAULT NULL,
+  `CITY` varchar(55) DEFAULT NULL,
+  `ZIP` varchar(12) DEFAULT NULL,
+  `STREET1` varchar(55) DEFAULT NULL,
+  `STREET2` varchar(55) DEFAULT NULL,
   PRIMARY KEY (`ADDRESSID`)
 ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
 SET character_set_client = @saved_cs_client;
 
 --
--- Dumping data for table `ADDRESS`
---
-
-
---
 -- Table structure for table `COMMENTS_RATING`
 --
 
@@ -68,12 +63,12 @@
 SET @saved_cs_client     = @@character_set_client;
 SET character_set_client = utf8;
 CREATE TABLE `COMMENTS_RATING` (
-  `commentsid` int(11) NOT NULL,
+  `commentsid` INTEGER NOT NULL AUTO_INCREMENT,
   `CREATIONTIME` datetime DEFAULT NULL,
   `COMMENTS` text,
-  `RATING` int(11) DEFAULT NULL,
-  `USERNAME_USERNAME` varchar(255) DEFAULT NULL,
-  `SOCIALEVENT_SOCIALEVENTID` int(11) DEFAULT NULL,
+  `RATING` INTEGER DEFAULT NULL,
+  `USERNAME_USERNAME` varchar(55) DEFAULT NULL,
+  `SOCIALEVENT_SOCIALEVENTID` INTEGER DEFAULT NULL,
   PRIMARY KEY (`commentsid`),
   KEY `FK_COMMENTS_RATING_SOCIALEVENT_SOCIALEVENTID` (`SOCIALEVENT_SOCIALEVENTID`),
   KEY `FK_COMMENTS_RATING_USERNAME_USERNAME` (`USERNAME_USERNAME`),
@@ -82,9 +77,6 @@
 ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
 SET character_set_client = @saved_cs_client;
 
---
--- Dumping data for table `COMMENTS_RATING`
---
 
 /*!40000 ALTER TABLE `COMMENTS_RATING` DISABLE KEYS */;
 /*!40000 ALTER TABLE `COMMENTS_RATING` ENABLE KEYS */;
@@ -103,9 +95,6 @@
 ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
 SET character_set_client = @saved_cs_client;
 
---
--- Dumping data for table `ID_GEN`
---
 
 --
 -- Table structure for table `INVITATION`
@@ -115,10 +104,10 @@
 SET @saved_cs_client     = @@character_set_client;
 SET character_set_client = utf8;
 CREATE TABLE `INVITATION` (
-  `INVITATIONID` int(11) NOT NULL,
+  `INVITATIONID` INTEGER NOT NULL AUTO_INCREMENT,
   `ISACCEPTED` tinyint(1) DEFAULT '0',
-  `REQUESTOR_USERNAME` varchar(255) DEFAULT NULL,
-  `CANDIDATE_USERNAME` varchar(255) DEFAULT NULL,
+  `REQUESTOR_USERNAME` varchar(25) DEFAULT NULL,
+  `CANDIDATE_USERNAME` varchar(25) DEFAULT NULL,
   PRIMARY KEY (`INVITATIONID`),
   KEY `FK_INVITATION_CANDIDATE_USERNAME` (`CANDIDATE_USERNAME`),
   KEY `FK_INVITATION_REQUESTOR_USERNAME` (`REQUESTOR_USERNAME`),
@@ -127,10 +116,6 @@
 ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
 SET character_set_client = @saved_cs_client;
 
---
--- Dumping data for table `INVITATION`
---
-
 
 --
 -- Table structure for table `PERSON`
@@ -140,27 +125,23 @@
 SET @saved_cs_client     = @@character_set_client;
 SET character_set_client = utf8;
 CREATE TABLE `PERSON` (
-  `USERNAME` varchar(255) NOT NULL,
-  `PASSWORD` varchar(255) DEFAULT NULL,
+  `USERNAME` varchar(25) NOT NULL,
+  `PASSWORD` varchar(25) DEFAULT NULL,
   `SUMMARY` text,
-  `TELEPHONE` varchar(255) DEFAULT NULL,
-  `IMAGETHUMBURL` varchar(255) DEFAULT NULL,
-  `IMAGEURL` varchar(255) DEFAULT NULL,
-  `FIRSTNAME` varchar(255) DEFAULT NULL,
-  `LASTNAME` varchar(255) DEFAULT NULL,
-  `EMAIL` varchar(255) DEFAULT NULL,
-  `TIMEZONE` varchar(255) DEFAULT NULL,
-  `ADDRESS_ADDRESSID` int(11) DEFAULT NULL,
+  `TELEPHONE` varchar(25) DEFAULT NULL,
+  `IMAGETHUMBURL` varchar(100) DEFAULT NULL,
+  `IMAGEURL` varchar(100) DEFAULT NULL,
+  `FIRSTNAME` varchar(25) DEFAULT NULL,
+  `LASTNAME` varchar(25) DEFAULT NULL,
+  `EMAIL` varchar(90) DEFAULT NULL,
+  `TIMEZONE` varchar(25) DEFAULT NULL,
+  `ADDRESS_ADDRESSID` INTEGER DEFAULT NULL,
   PRIMARY KEY (`USERNAME`),
   KEY `FK_PERSON_ADDRESS_ADDRESSID` (`ADDRESS_ADDRESSID`),
   CONSTRAINT `FK_PERSON_ADDRESS_ADDRESSID` FOREIGN KEY (`ADDRESS_ADDRESSID`) REFERENCES `ADDRESS` (`ADDRESSID`)
 ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
 SET character_set_client = @saved_cs_client;
 
---
--- Dumping data for table `PERSON`
---
-
 
 --
 -- Table structure for table `PERSON_PERSON`
@@ -170,8 +151,8 @@
 SET @saved_cs_client     = @@character_set_client;
 SET character_set_client = utf8;
 CREATE TABLE `PERSON_PERSON` (
-  `Person_USERNAME` varchar(255) NOT NULL,
-  `friends_USERNAME` varchar(255) NOT NULL,
+  `Person_USERNAME` varchar(25) NOT NULL,
+  `friends_USERNAME` varchar(25) NOT NULL,
   PRIMARY KEY (`Person_USERNAME`,`friends_USERNAME`),
   KEY `FK_PERSON_PERSON_friends_USERNAME` (`friends_USERNAME`),
   CONSTRAINT `FK_PERSON_PERSON_Person_USERNAME` FOREIGN KEY (`Person_USERNAME`) REFERENCES `PERSON` (`USERNAME`),
@@ -179,10 +160,6 @@
 ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
 SET character_set_client = @saved_cs_client;
 
---
--- Dumping data for table `PERSON_PERSON`
---
-
 
 --
 -- Table structure for table `PERSON_SOCIALEVENT`
@@ -192,8 +169,8 @@
 SET @saved_cs_client     = @@character_set_client;
 SET character_set_client = utf8;
 CREATE TABLE `PERSON_SOCIALEVENT` (
-  `SOCIALEVENTID` int(11) NOT NULL,
-  `USERNAME` varchar(255) NOT NULL,
+  `SOCIALEVENTID` INTEGER NOT NULL,
+  `USERNAME` varchar(25) NOT NULL,
   PRIMARY KEY (`SOCIALEVENTID`,`USERNAME`),
   KEY `FK_PERSON_SOCIALEVENT_USERNAME` (`USERNAME`),
   CONSTRAINT `FK_PERSON_SOCIALEVENT_USERNAME` FOREIGN KEY (`USERNAME`) REFERENCES `PERSON` (`USERNAME`),
@@ -202,11 +179,6 @@
 SET character_set_client = @saved_cs_client;
 
 --
--- Dumping data for table `PERSON_SOCIALEVENT`
---
-
-
---
 -- Table structure for table `SOCIALEVENT`
 --
 
@@ -214,21 +186,21 @@
 SET @saved_cs_client     = @@character_set_client;
 SET character_set_client = utf8;
 CREATE TABLE `SOCIALEVENT` (
-  `SOCIALEVENTID` int(11) NOT NULL,
-  `DESCRIPTION` text,
-  `TITLE` varchar(255) DEFAULT NULL,
-  `SUBMITTERUSERNAME` varchar(255) DEFAULT NULL,
-  `SUMMARY` varchar(255) DEFAULT NULL,
-  `TELEPHONE` varchar(255) DEFAULT NULL,
-  `IMAGETHUMBURL` varchar(255) DEFAULT NULL,
-  `IMAGEURL` varchar(255) DEFAULT NULL,
-  `LITERATUREURL` varchar(255) DEFAULT NULL,
+  `SOCIALEVENTID` INTEGER NOT NULL AUTO_INCREMENT,
+  `DESCRIPTION` VARCHAR(500) NOT NULL,
+  `TITLE` varchar(100) DEFAULT NULL,
+  `SUBMITTERUSERNAME` varchar(25) DEFAULT NULL,
+  `SUMMARY` varchar(100) DEFAULT NULL,
+  `TELEPHONE` varchar(20) DEFAULT NULL,
+  `IMAGETHUMBURL` varchar(100) DEFAULT NULL,
+  `IMAGEURL` varchar(100) DEFAULT NULL,
+  `LITERATUREURL` varchar(100) DEFAULT NULL,
   `EVENTTIMESTAMP` datetime DEFAULT NULL,
-  `TOTALSCORE` int(11) DEFAULT NULL,
-  `NUMBEROFVOTES` int(11) DEFAULT NULL,
-  `DISABLED` int(11) DEFAULT NULL,
+  `TOTALSCORE` INTEGER DEFAULT NULL,
+  `NUMBEROFVOTES` INTEGER  DEFAULT NULL,
+  `DISABLED` INTEGER DEFAULT NULL,
   `CREATEDTIMESTAMP` datetime DEFAULT NULL,
-  `ADDRESS_ADDRESSID` int(11) DEFAULT NULL,
+  `ADDRESS_ADDRESSID` INTEGER DEFAULT NULL,
   PRIMARY KEY (`SOCIALEVENTID`),
   KEY `FK_SOCIALEVENT_ADDRESS_ADDRESSID` (`ADDRESS_ADDRESSID`),
   CONSTRAINT `FK_SOCIALEVENT_ADDRESS_ADDRESSID` FOREIGN KEY (`ADDRESS_ADDRESSID`) REFERENCES `ADDRESS` (`ADDRESSID`)
@@ -242,11 +214,6 @@
 
 
 --
--- Dumping data for table `SOCIALEVENT`
---
-
-
---
 -- Table structure for table `SOCIALEVENTTAG`
 --
 
@@ -254,9 +221,9 @@
 SET @saved_cs_client     = @@character_set_client;
 SET character_set_client = utf8;
 CREATE TABLE `SOCIALEVENTTAG` (
-  `SOCIALEVENTTAGID` int(11) NOT NULL,
-  `TAG` varchar(255) DEFAULT NULL,
-  `REFCOUNT` int(11) DEFAULT NULL,
+  `SOCIALEVENTTAGID` INTEGER NOT NULL AUTO_INCREMENT,
+  `TAG` varchar(30) DEFAULT NULL,
+  `REFCOUNT` INTEGER DEFAULT NULL,
   PRIMARY KEY (`SOCIALEVENTTAGID`)
 ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
 SET character_set_client = @saved_cs_client;
@@ -269,8 +236,8 @@
 SET @saved_cs_client     = @@character_set_client;
 SET character_set_client = utf8;
 CREATE TABLE `SOCIALEVENTTAG_SOCIALEVENT` (
-  `SOCIALEVENTTAGID` int(11) NOT NULL,
-  `SOCIALEVENTID` int(11) NOT NULL,
+  `SOCIALEVENTTAGID` INTEGER NOT NULL,
+  `SOCIALEVENTID` INTEGER NOT NULL,
   PRIMARY KEY (`SOCIALEVENTTAGID`,`SOCIALEVENTID`),
   KEY `FK_SOCIALEVENTTAG_SOCIALEVENT_SOCIALEVENTID` (`SOCIALEVENTID`),
   CONSTRAINT `FK_SOCIALEVENTTAG_SOCIALEVENT_SOCIALEVENTID` FOREIGN KEY (`SOCIALEVENTID`) REFERENCES `SOCIALEVENT` (`SOCIALEVENTID`),

Modified: incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Address.java
URL: http://svn.apache.org/viewvc/incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Address.java?rev=823754&r1=823753&r2=823754&view=diff
==============================================================================
--- incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Address.java (original)
+++ incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Address.java Sat Oct 10 00:38:06 2009
@@ -35,39 +35,41 @@
  */
 public class Address extends Loadable {
 
-    private static final String STATEMENT = "insert into ADDRESS (addressid, street1, " +
+    private static final String STATEMENT = "insert into ADDRESS (street1, " +
             "street2, city, state, zip, country, latitude, longitude)" +
-            "values (?, ?, ?, ?, ?, ?, ?, ?, ?)";
-    public static final String[] STREETEXTS = {"Blvd", "Ave", "St", "Ln", ""};
+            "values (?, ?, ?, ?, ?, ?, ?, ?)";
+    public static final String[] STREETEXTS = { "Blvd", "Ave", "St", "Ln", "" };
     static Logger logger = Logger.getLogger(Address.class.getName());
+
     String[] fields = new String[8];
-    private int id;
+
 
     public String getClearStatement() {
         return "truncate table ADDRESS";
     }
 
     public void prepare() {
-		id = getSequence();
-		++id;
+        //int id = getSequence();
+        //++id;
         ThreadResource tr = ThreadResource.getInstance();
         Random r = tr.getRandom();
         StringBuilder buffer = tr.getBuffer();
         buffer.append(r.makeNString(1, 5)).append(' '); // number
         RandomUtil.randomName(r, buffer, 1, 11); // street
         String streetExt = STREETEXTS[r.random(0, STREETEXTS.length - 1)];
-        if (streetExt.length() > 0) {
+        if (streetExt.length() > 0)
             buffer.append(' ').append(streetExt);
-        }
+
         fields[0] = buffer.toString();
 
         int toggle = r.random(0, 1); // street2
-        if (toggle > 0) {
+        if (toggle > 0)
             fields[1] = r.makeCString(5, 20);
-        }
+
         fields[2] = r.makeCString(4, 14); // city
         fields[3] = r.makeCString(2, 2).toUpperCase(); // state
         fields[4] = r.makeNString(5, 5);  // zip
+
         toggle = r.random(0, 1);
         if (toggle == 0) {
             fields[5] = "USA";
@@ -77,6 +79,7 @@
         }
         // Latitude, we do not get addresses in polar circles. So the limit
         fields[6] = String.format("%.6f", r.drandom(-66.560556d, 66.560556d));
+
         fields[7] = String.format("%.6f", r.drandom(-179.999999d, 180d));
     }
 
@@ -84,22 +87,20 @@
         ThreadConnection c = ThreadConnection.getInstance();
         try {
             PreparedStatement s = c.prepareStatement(STATEMENT);
-            s.setInt(1, id);
-            for (int i = 0; i < fields.length; i++) {
-                if (fields[i] != null) {
-                    s.setString(i + 2, fields[i]);
-                } else {
-                    s.setNull(i + 2, Types.VARCHAR);
-                }
-            }
+            for (int i = 0; i < fields.length; i++)
+                if (fields[i] != null)
+                    s.setString(i + 1, fields[i]);                  
+                else
+                    s.setNull(i + 1, Types.VARCHAR);
             c.addBatch();
-
+            
         } catch (SQLException e) {
             logger.log(Level.SEVERE, e.getMessage(), e);
+            //LoadController.increaseErrorCount();
         }
     }
 
-    /**
+     /**
      * For address, update ID after all the data is loaded.
      * So we update the ID_GEN table at postload and add 1 to count.
      */
@@ -107,14 +108,25 @@
         ThreadConnection c = ThreadConnection.getInstance();
         try {
             //update id
-            logger.fine("Updating Address ID");
-            c.prepareStatement("INSERT INTO ID_GEN " +
+             logger.info("Updating Address ID");
+              
+             c.prepareStatement("INSERT INTO ID_GEN " +
                     "(GEN_KEY, GEN_VALUE) " +
-                    "VALUES ('ADDRESS_ID', " + ScaleFactors.users + 1 + ")");
-            c.executeUpdate();
-            logger.fine("After updating Address ID");
+                    "VALUES ('ADDRESS_ID', "+ ScaleFactors.users+1  + ")");
+             c.executeUpdate();
+             
+            /* 
+             c.prepareStatement("update ID_GEN set GEN_VALUE = " +
+                    "(select count(*) + 1 from ADDRESS) " +
+                    "where GEN_KEY='ADDRESS_ID'");
+             c.executeUpdate();
+             */ 
+             logger.info("After updating Address ID");
         } catch (SQLException e) {
             logger.log(Level.SEVERE, e.getMessage(), e);
+            //LoadController.increaseErrorCount();
         }
+
+
     }
 }

Modified: incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Attendees.java
URL: http://svn.apache.org/viewvc/incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Attendees.java?rev=823754&r1=823753&r2=823754&view=diff
==============================================================================
--- incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Attendees.java (original)
+++ incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Attendees.java Sat Oct 10 00:38:06 2009
@@ -48,11 +48,8 @@
     public String getClearStatement() {
         return "truncate table PERSON_SOCIALEVENT";
     }
-/**
-    public Attendees(int eventId) {
-        this.eventId = ++eventId;
-    }
-**/
+
+
     public void prepare() {
         eventId = getSequence();
         ++eventId;

Modified: incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Comments.java
URL: http://svn.apache.org/viewvc/incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Comments.java?rev=823754&r1=823753&r2=823754&view=diff
==============================================================================
--- incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Comments.java (original)
+++ incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Comments.java Sat Oct 10 00:38:06 2009
@@ -28,7 +28,6 @@
 import java.util.logging.Level;
 import java.sql.PreparedStatement;
 import java.sql.SQLException;
-import java.util.concurrent.atomic.AtomicLong;
 import java.text.DateFormat;
 import java.sql.Date;
 
@@ -39,19 +38,17 @@
     // We use on average of 10 comments per event. Random 0..20 comments..
 
     private static final String STATEMENT = "insert into COMMENTS_RATING " +
-            "(commentsid, username_username, socialevent_socialeventid, comments, rating, creationtime) values (?, ?, ?, ?, ?, ?)";
+            "(username_username, socialevent_socialeventid, comments, rating, creationtime) values (?, ?, ?, ?, ?)";
+
     static Logger logger = Logger.getLogger(Comments.class.getName());
-    private static AtomicLong idGen = new AtomicLong(1);
+
     public static final Date BASE_DATE = new Date(System.currentTimeMillis());
+
     int eventId;
     String[] userNames;
     String[] comments;
     int[] ratings;
-    String[] cDates;
-
-    public static long getNextId() {
-        return idGen.getAndIncrement();
-    }
+    Date created_at;
 
     public String getClearStatement() {
         return "truncate table COMMENTS_RATING";
@@ -66,43 +63,37 @@
         userNames = new String[commentCount];
         comments = new String[commentCount];
         ratings = new int[commentCount];
-        cDates = new String[commentCount];
-
-        DateFormat dateFormat = tr.getDateFormat();
-        String cDate = dateFormat.format(
-                r.makeDateInInterval(BASE_DATE, 0, 540));
-        int eventHr = r.random(7, 21);
-        int eventMin = (int) r.random(0, 59);
-
         for (int i = 0; i < userNames.length; i++) {
             int userId = r.random(1, ScaleFactors.users);
             userNames[i] = UserName.getUserName(userId);
             comments[i] = r.makeCString(10, 1000);
-            ratings[i] = r.random(2, 5);
-            cDates[i] = String.format("%s %02d:%s:00",
-                    cDate, eventHr, eventMin);
+            ratings[i] = r.random(2, 5);           
         }
+    created_at = r.makeDateInInterval( BASE_DATE, -540, 0);
+
     }
 
+
     public void load() {
         ThreadConnection c = ThreadConnection.getInstance();
         try {
             for (int i = 0; i < userNames.length; i++) {
                 PreparedStatement s = c.prepareStatement(STATEMENT);
-                s.setLong(1, getNextId());
-                s.setString(2, userNames[i]);
-                s.setInt(3, eventId);
-                s.setString(4, comments[i]);
-                s.setInt(5, ratings[i]);
-                s.setString(6, cDates[i]);
+                s.setString(1, userNames[i]);
+                s.setInt(2, eventId);
+                s.setString(3, comments[i]);
+                s.setInt(4, ratings[i]);
+                s.setDate(5, created_at);
                 c.addBatch();
+                
             }
         } catch (SQLException e) {
             logger.log(Level.SEVERE, e.getMessage(), e);
+            //LoadController.increaseErrorCount();
         }
     }
-
-    /**
+    
+       /**
      * For address, update ID after all the data is loaded.
      * So we update the ID_GEN table at postload and add 1 to count.
      */
@@ -110,20 +101,36 @@
         ThreadConnection c = ThreadConnection.getInstance();
         try {
             //update id
-
+            
             //bug exists in JPA where we are using one ID generator (address)
             //for now, update to a ridiculous high number to avoid duplicate key 
             //exceptions
-
-            logger.fine("Updating Comments_Rating ID");
-            c.prepareStatement("INSERT INTO ID_GEN " +
+            
+            
+             logger.fine("updating Comments_Rating ID");
+             /*
+             c.prepareStatement("update ID_GEN set GEN_VALUE = " +
+                    "(select count(*) + 1 from COMMENTS_RATING) " +
+                    "where GEN_KEY='COMMENTS_RATING_ID'");
+             c.executeUpdate();
+             */ 
+            
+             logger.fine("Updating Comments_Rating ID");
+             
+             c.prepareStatement("INSERT INTO ID_GEN " +
                     "(GEN_KEY, GEN_VALUE) " +
-                    "VALUES ('COMMENTS_RATING_ID', " + ScaleFactors.events + 1 + ")");
-            c.executeUpdate();
-            logger.fine("After updating Comments_Rating ID");
+                    "VALUES ('COMMENTS_RATING_ID', "+ ScaleFactors.events +1 + ")");
+             c.executeUpdate();
+              
+            
+            
+             logger.fine("After updating Comments_Rating ID");
         } catch (SQLException e) {
             logger.log(Level.SEVERE, e.getMessage(), e);
-        // LoadController.increaseErrorCount();
+           // LoadController.increaseErrorCount();
         }
+
+
     }
+
 }

Modified: incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Friends.java
URL: http://svn.apache.org/viewvc/incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Friends.java?rev=823754&r1=823753&r2=823754&view=diff
==============================================================================
--- incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Friends.java (original)
+++ incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Friends.java Sat Oct 10 00:38:06 2009
@@ -41,7 +41,7 @@
 
     static Logger logger = Logger.getLogger(Friends.class.getName());
 
-    int id;
+    //int id;
     String userName;
     String[] friends;
 
@@ -50,7 +50,7 @@
     }
 
     public void prepare() {
-        id = getSequence();
+        int id = getSequence();
         ++id;
         ThreadResource tr = ThreadResource.getInstance();
         Random r = tr.getRandom();
@@ -82,6 +82,7 @@
             }
         } catch (SQLException e) {
             logger.log(Level.SEVERE, e.getMessage(), e);
+            //LoadController.increaseErrorCount();
         }
     }
 }

Modified: incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Invitation.java
URL: http://svn.apache.org/viewvc/incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Invitation.java?rev=823754&r1=823753&r2=823754&view=diff
==============================================================================
--- incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Invitation.java (original)
+++ incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Invitation.java Sat Oct 10 00:38:06 2009
@@ -38,7 +38,8 @@
     // follow same as friends.  Average of 15 invitations. Random 2..28 Friends.
 
     private static final String STATEMENT = "insert into INVITATION " +
-            "(invitationid, isaccepted, requestor_username, candidate_username) values (?, ?, ?, ?)";
+          //  "(invitationid, isaccepted, requestor_username, candidate_username) values (?, ?, ?, ?)";
+              "(isaccepted, requestor_username, candidate_username) values (?, ?, ?)";
     
 
     static Logger logger = Logger.getLogger(Friends.class.getName());
@@ -52,6 +53,7 @@
     public String getClearStatement() {
         return "truncate table INVITATION";
     }
+      
 
     public void prepare() {
         id = getSequence();
@@ -80,10 +82,16 @@
         try {
             for (String friend : friends) {
                 PreparedStatement s = c.prepareStatement(STATEMENT);
-                s.setInt(1, aint.incrementAndGet());
-                 s.setInt(2, 0);
-                s.setString(3, requestorUsername);
-                s.setString(4, friend);
+                int alternate=0;
+                if (alternate%2 == 0){
+                    s.setInt(1, 0);
+                }else{
+                    s.setInt(1, 1);
+                }
+                s.setString(2, requestorUsername);
+                s.setString(3, friend);
+                 
+                alternate++;
                 c.addBatch();
             }
         } catch (SQLException e) {
@@ -93,23 +101,28 @@
         }
     }
     
-    /**
+        /**
      * For address, update ID after all the data is loaded.
      * So we update the ID_GEN table at postload and add 1 to count.
      */
     public void postLoad() {
         ThreadConnection c = ThreadConnection.getInstance();
-        try {            
+        try {
+            //update id
+            
             //bug exists in JPA where we are using one ID generator (address)
             //for now, update to a ridiculous high number to avoid duplicate key 
-            //exceptions            
+            //exceptions
+            
             
              logger.fine("Updating Invitation ID");
              c.prepareStatement("INSERT INTO ID_GEN " +
                     "(GEN_KEY, GEN_VALUE) " +
                     "VALUES ('INVITATION_ID', "+ ScaleFactors.users +1 + ")");
              c.executeUpdate();
-                                    
+            
+            
+            
              logger.fine("After updating Invitation ID");
         } catch (SQLException e) {
             logger.log(Level.SEVERE, e.getMessage(), e);

Modified: incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Person.java
URL: http://svn.apache.org/viewvc/incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Person.java?rev=823754&r1=823753&r2=823754&view=diff
==============================================================================
--- incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Person.java (original)
+++ incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Person.java Sat Oct 10 00:38:06 2009
@@ -1,4 +1,4 @@
- /*
+/*
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
  * distributed with this work for additional information
@@ -42,16 +42,15 @@
             "values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
     static Logger logger = Logger.getLogger(Person.class.getName());
 
-    int id;
     String[] fields = new String[10];
     int addressId;
-
+  
     public String getClearStatement() {
         return "truncate table PERSON";
     }
 
     public void prepare() {
-        id = getSequence();
+        int id = getSequence();
         ++id;
         ThreadResource tr = ThreadResource.getInstance();
         Random r = tr.getRandom();

Modified: incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/SocialEvent.java
URL: http://svn.apache.org/viewvc/incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/SocialEvent.java?rev=823754&r1=823753&r2=823754&view=diff
==============================================================================
--- incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/SocialEvent.java (original)
+++ incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/SocialEvent.java Sat Oct 10 00:38:06 2009
@@ -41,16 +41,16 @@
     public static final Date BASE_DATE = new Date(System.currentTimeMillis());
 
     private static final String STATEMENT = "insert into SOCIALEVENT " +
-            "(socialeventid, title, summary, description, submitterUserName, imageurl, " +
-            "imagethumburl, literatureurl, telephone, " +
-            "eventtimestamp, createdtimestamp, ADDRESS_addressid, " +
-            "totalscore, numberofvotes, disabled) " +
-            "values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
+            //"(socialeventid, title, summary, description, submitterUserName, imageurl, " +
+            "(title, summary, description, submitterUserName, imageurl, " + //5
+            "imagethumburl, literatureurl, telephone, " + //8
+            "eventtimestamp, createdtimestamp, ADDRESS_addressid, " + //11
+            "totalscore, numberofvotes, disabled) " + //14
+            "values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
 
     private static final String[] EVT_MINUTES = { "00", "15", "30", "45" };
 
     static Logger logger = Logger.getLogger(SocialEvent.class.getName());
-    int id;
 
     String[] fields = new String[9];
     Date createdTimestamp;
@@ -61,7 +61,7 @@
     }
 
     public void prepare() {
-        id = getSequence();
+        int id = getSequence();
         ++id;
         ThreadResource tr = ThreadResource.getInstance();
         Random r = tr.getRandom();
@@ -69,7 +69,7 @@
         fields[0] = RandomUtil.randomText(r, 15, 20); //title
         fields[1] = RandomUtil.randomText(r, 15, 50); //summary
         fields[2] = RandomUtil.randomText(r, 50, 495); // description
-        fields[3] = UserName.getUserName(r.random(1, ScaleFactors.users));
+        fields[3] = UserName.getUserName(r.random(1, ScaleFactors.users)); //submitterUserName
         fields[4] = "e" + id + ".jpg"; // imageurl
         fields[5] = "e" + id + "t.jpg"; // imagethumburl
         fields[6] = "e" + id + "l.pdf"; //literatureurl
@@ -81,32 +81,31 @@
         String eventMin = EVT_MINUTES[r.random(0, 3)];  // eventtimestamp
         fields[8] = String.format("%s %02d:%s:00",
                                             eventDate, eventHr, eventMin);
+
         createdTimestamp = r.makeDateInInterval( //createdtimestamp
                                         BASE_DATE, -540, 0);
         ifields[0] = r.random(1, ScaleFactors.users); // addressId
         // The rest is initialized to 0 anyway, leave it that way.
     }
-
-    public void load() {
+    
+     public void load() {
         ThreadConnection c = ThreadConnection.getInstance();
         try {
             PreparedStatement s = c.prepareStatement(STATEMENT);
-            s.setInt (1, id);
- 	    int len=2;
-            for (int i = 0; i < fields.length; i++,len++)
+            for (int i = 0; i < fields.length; i++)
                 if (fields[i] != null)
-                    s.setString(i + 2, fields[i]);
+                    s.setString(i + 1, fields[i]);
                 else
-                    s.setNull(i + 2, Types.VARCHAR);
-            s.setDate(len, createdTimestamp);
-	    len++;
-            for (int i = 0; i < ifields.length; i++,len++)
-                s.setInt(len, ifields[i]);
+                    s.setNull(i + 1, Types.VARCHAR);
+            s.setDate(10, createdTimestamp);
+            for (int i = 0; i < ifields.length; i++)
+                s.setInt(11 + i, ifields[i]);
             c.addBatch();
         } catch (SQLException e) {
             logger.log(Level.SEVERE, e.getMessage(), e);
         }
     }
+     
 
      /**
      * For tags, we won't know the refcount till all the data is loaded.
@@ -116,17 +115,26 @@
         ThreadConnection c = ThreadConnection.getInstance();
         try {
             //update id
-             logger.fine("before updating socialEventID");
+             logger.fine("before updating socialEventID");             
              
              c.prepareStatement("INSERT INTO ID_GEN " +
                     "(GEN_KEY, GEN_VALUE) " +
                     "VALUES ('SOCIAL_EVENT_ID', "+ ScaleFactors.events +1 + ")");
              c.executeUpdate();                          
              
+            /* 
+             c.prepareStatement("update ID_GEN set GEN_VALUE = " +
+                    "(select count(*) +1 from SOCIALEVENT) " +
+                    "where GEN_KEY='SOCIAL_EVENT_ID'");
+             c.executeUpdate();
+             */
              logger.fine("after updating socialEventID");
         } catch (SQLException e) {
             logger.log(Level.SEVERE, e.getMessage(), e);
             //LoadController.increaseErrorCount();
         }
+
+
     }
+
 }

Modified: incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Tag.java
URL: http://svn.apache.org/viewvc/incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Tag.java?rev=823754&r1=823753&r2=823754&view=diff
==============================================================================
--- incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Tag.java (original)
+++ incubator/olio/workload/java/trunk/src/org/apache/olio/workload/loader/Tag.java Sat Oct 10 00:38:06 2009
@@ -36,30 +36,32 @@
     // Note that the tag id in the database is autoincrement and may
     // not coincide with this tag id/name when using multi-thread loading.
     private static final String STATEMENT = "insert into SOCIALEVENTTAG " +
-            "(socialeventtagid, tag, refcount) values (?, ?, ?)";
+            //"(socialeventtagid, tag, refcount) values (?, ?, ?)";
+            "(tag, refcount) values (?, ?)";
 
     static Logger logger = Logger.getLogger(Tag.class.getName());
 
-    int id;
     String tag;
 
+   
+
     public String getClearStatement() {
-        return "truncate table SOCIALEVENTTAG";
+        return "truncate table SOCIALEVENTTAG ";
     }
 
     public void prepare() {
-        id = getSequence();
+        int id = getSequence();
         ++id;
         tag = UserName.getUserName(id);
     }
 
+
     public void load() {
         ThreadConnection c = ThreadConnection.getInstance();
         try {
             PreparedStatement s = c.prepareStatement(STATEMENT);
-            s.setInt (1, id);
-            s.setString(2, tag);
-            s.setInt(3, 0); // Initialize it to 0 first, count and add later.
+            s.setString(1, tag);
+            s.setInt(2, 0); // Initialize it to 0 first, count and add later.
             c.addBatch();
         } catch (SQLException e) {
             logger.log(Level.SEVERE, e.getMessage(), e);
@@ -82,7 +84,13 @@
             //update id
             
             logger.fine("updating Tag ID_GEN ID");
-            c.prepareStatement("INSERT INTO ID_GEN " +
+             /* 
+             c.prepareStatement("update ID_GEN set GEN_VALUE = " + 
+                    "(select count(*) +1 from SOCIALEVENTTAG) " +
+                    "where GEN_KEY='SOCIAL_EVENT_TAG_ID'"); 
+             c.executeUpdate();
+             */                        
+             c.prepareStatement("INSERT INTO ID_GEN " +
                     "(GEN_KEY, GEN_VALUE) " +
                     "VALUES ('SOCIAL_EVENT_TAG_ID', "+ ScaleFactors.tagCount + ")");
              c.executeUpdate();
@@ -91,5 +99,7 @@
         } catch (SQLException e) {
             logger.log(Level.SEVERE, e.getMessage(), e);
         }
+
+
     }
 }