<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>

<channel>
	<title>The Oracle Lite Blog</title>
	<atom:link href="http://www.rekounas.org/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.rekounas.org</link>
	<description>The Rekounas Blog about Oracle Lite and Mobile Server Technologies and Solutions</description>
	<pubDate>Fri, 27 Aug 2010 01:19:26 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
	<language>en</language>
			<item>
		<title>Getting started with Berkeley DB and Oracle Mobile Server</title>
		<link>http://www.rekounas.org/2010/08/26/getting-started-with-berkeley-db-and-oracle-mobile-server/</link>
		<comments>http://www.rekounas.org/2010/08/26/getting-started-with-berkeley-db-and-oracle-mobile-server/#comments</comments>
		<pubDate>Fri, 27 Aug 2010 01:16:13 +0000</pubDate>
		<dc:creator>rekounas</dc:creator>
		
		<category><![CDATA[Berkeley DB]]></category>

		<category><![CDATA[Oracle Lite]]></category>

		<category><![CDATA[SQLite]]></category>

		<guid isPermaLink="false">http://www.rekounas.org/?p=103</guid>
		<description><![CDATA[In this post, I will try to give a quick overview of setting up Berkeley DB to Sync with Mobile Server.  It is important to note that we will be overriding the SQLite deployment.
Step 1: Building the Berkeley DB
Here is the document to get you started.
Step 2: Rename Binaries
Once you have built the binaries [...]]]></description>
			<content:encoded><![CDATA[<p>In this post, I will try to give a quick overview of setting up Berkeley DB to Sync with Mobile Server.  It is important to note that we will be overriding the SQLite deployment.</p>
<p><strong>Step 1: Building the Berkeley DB</strong><br />
<a href="http://download.oracle.com/docs/cd/E17076_01/html/installation/build_win.html#id3766607">Here</a> is the document to get you started.</p>
<p><strong>Step 2: Rename Binaries</strong><br />
Once you have built the binaries (libdb_sql50.dll and dbsql.exe) rename those files to sqlite3.dll and sqlite3.exe.</p>
<p><strong>Step 3: Copy File to the Mobile Server</strong><br />
Copy those files to the Mobile Server under the following path:<br />
$ORACLE_HOME/mobile/server/admin/repository/setup/common/win32/sqlite/</p>
<p>Modify the following file:<br />
$ORACLE_HOME/mobile/server/admin/repository/setup/dmc/common/sqlite_win32.inf</p>
<p>Add the following entry that is in bold lettering:</p>
<p><code>&lt;item&gt;<br />
&lt;src&gt;/common/win32/sqlite/sqlite3.dll&lt;/src&gt;<br />
&lt;des&gt;$APP_DIR$\bin\sqlite3.dll&lt;/des&gt;<br />
&lt;/item&gt;<br />
<strong> &lt;item&gt;<br />
&lt;src&gt;/common/win32/sqlite/sqlite3.exe&lt;/src&gt;<br />
&lt;des&gt;$APP_DIR$\bin\sqlite3.exe&lt;/des&gt;<br />
&lt;/item&gt;</strong><br />
</code></p>
<p><em>This is optional.  The sqlite3.exe is equivalent to msql or sql*plus.</em></p>
<p>You should now be able to run the setup.exe for the SQLite Win32 and the client will be set up for Berkeley DB SQL API.</p>
<p>If you perform a sync with the SQLite client, your directory structure will look something like this:<br />
<code><br />
08/26/2010  01:25 PM            41,984 default.db<br />
08/26/2010  08:42 PM            67,584 fod.db<br />
08/26/2010  08:42 PM            20,480 OSE$default.db<br />
08/26/2010  08:42 PM            34,816 OSE$fod.db<br />
</code></p>
<p>By using the Berkeley DB SQL API, your structure will differ by having &lt;database&gt;-journal folders.<br />
<code><br />
08/26/2010  09:44 PM            32,768 default.db<br />
08/26/2010  09:44 PM    &lt;DIR&gt;          default.db-journal<br />
08/26/2010  09:44 PM            32,768 fod.db<br />
08/26/2010  09:44 PM    &lt;DIR&gt;          fod.db-journal<br />
08/26/2010  09:44 PM            32,768 OSE$default.db<br />
08/26/2010  09:44 PM    &lt;DIR&gt;          OSE$default.db-journal<br />
08/26/2010  09:44 PM            32,768 OSE$fod.db<br />
08/26/2010  09:44 PM    &lt;DIR&gt;          OSE$fod.db-journal</code></p>
<p>For a lot of the Oracle SQL Developers, some things you will need to brush up on while using the new SQLite environment.  Lack of Stored Procedures&#8230; but since Berkeley DB source code is availble as open source, a developer should be able to add functions to be able to perform the same tasks.  SQLite doesn&#8217;t support sequences in the same way Oracle supports sequences.  So, to have the ability to sync your sequences to the client, you will need to performance the following sql statements to keep your client and server in sync for sequences.</p>
<p>To get the nextval of a sequence<br />
<code>SELECT IFNULL((CUR_VALUE + INCREMENT_BY ), MIN_VALUE )<br />
  FROM C$SEQ_CLIENTS<br />
 WHERE NAME = 'MY_SEQ';</code></p>
<p>To update the sequence with the current value<br />
<code>UPDATE C$SEQ_CLIENTS<br />
   SET CUR_VALUE = IFNULL((CUR_VALUE + INCREMENT_BY ), MIN_VALUE )<br />
 WHERE NAME = 'MY_SEQ';</code></p>
<p>Other differences are obvious ones like SQL functions.  As I do a little bit more development with Berkeley DB, I will try to benchmark it against the SQLite flavour and the Oracle Lite database to see how everything stacks up.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rekounas.org/2010/08/26/getting-started-with-berkeley-db-and-oracle-mobile-server/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Oracle OpenWorld 2010</title>
		<link>http://www.rekounas.org/2010/08/19/oracle-openworld-2010/</link>
		<comments>http://www.rekounas.org/2010/08/19/oracle-openworld-2010/#comments</comments>
		<pubDate>Fri, 20 Aug 2010 01:17:13 +0000</pubDate>
		<dc:creator>rekounas</dc:creator>
		
		<category><![CDATA[Berkeley DB]]></category>

		<category><![CDATA[Oracle OpenWorld]]></category>

		<guid isPermaLink="false">http://www.rekounas.org/?p=102</guid>
		<description><![CDATA[I am headed to San Francisco again this year for Oracle OpenWorld.  I will also be a co-speaker for the following session:
Session ID: S317033
Title: Oracle Berkeley DB: Enabling Your Mobile Data Strategy
Abstract: Mobile data is everywhere. Deploying applications and updates, as well as collecting data from the field and synchronizing it with the Oracle [...]]]></description>
			<content:encoded><![CDATA[<p>I am headed to San Francisco again this year for <a href="http://www.oracle.com/us/openworld/index.htm">Oracle OpenWorld</a>.  I will also be a co-speaker for the following session:</p>
<p><strong>Session ID:</strong> S317033<br />
<strong>Title:</strong> Oracle Berkeley DB: Enabling Your Mobile Data Strategy<br />
<strong>Abstract:</strong> Mobile data is everywhere. Deploying applications and updates, as well as collecting data from the field and synchronizing it with the Oracle Database server infrastructure, is everyone&#8217;s concern today in IT. Mobile devices, by their very nature, are easily damaged, lost, or stolen. Therefore, enabling secure, rapid mobile deployment and synchronization is critically important. By combining Oracle Berkeley DB 11g and Oracle Database Lite Mobile Server, you can easily link your mobile devices, users, applications, and data with the corporate infrastructure in a safe and reliable manner. This session will discuss several real-world use cases.</p>
<p><strong>Speaker(s):</strong> Eric Jensen, Oracle, Principal Product Manager<br />
Greg Rekounas, Rekounas.org, Oracle Mobile Consultant<br />
<strong>Event:</strong> JavaOne and Oracle Develop<br />
<strong>Stream(s):</strong> ORACLE DEVELOP, DEVELOP </p>
<p>I am quite exited about going this year.  Oracle Mobile Server is in the process of changing the client database from Oracle Lite Database to the Oracle Berkeley Database.  I will be testing out some of these features and hope to have a how-to post about getting your synchronization working with Berkeley DB soon.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rekounas.org/2010/08/19/oracle-openworld-2010/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Changes to Oracle Lite Database components coming</title>
		<link>http://www.rekounas.org/2010/08/04/changes-to-oracle-lite-database-components-coming/</link>
		<comments>http://www.rekounas.org/2010/08/04/changes-to-oracle-lite-database-components-coming/#comments</comments>
		<pubDate>Wed, 04 Aug 2010 11:47:11 +0000</pubDate>
		<dc:creator>rekounas</dc:creator>
		
		<category><![CDATA[Berkeley DB]]></category>

		<category><![CDATA[Oracle Lite]]></category>

		<category><![CDATA[SQLite]]></category>

		<category><![CDATA[Webtogo]]></category>

		<guid isPermaLink="false">http://www.rekounas.org/?p=101</guid>
		<description><![CDATA[Before you read too far into the note, this is note for the decommissioning or the Oracle Lite Database Client.  The server, sync, and device manager along with the development tools are still being developed.  The client database will be Oracle Berkeley DB with SQL support via SQLite.  Basically, if you are [...]]]></description>
			<content:encoded><![CDATA[<p>Before you read too far into the note, this is note for the decommissioning or the Oracle Lite Database <strong>Client</strong>.  The server, sync, and device manager along with the development tools are still being developed.  The client database will be Oracle Berkeley DB with SQL support via SQLite.  Basically, if you are on Webtogo or the Branch Office, these deployments will be in maintenance (which means no new development) .</p>
<blockquote><p><strong>Oracle Database Lite client sunsetting announcement [ID 1124003.1]</strong><br />
<strong>Applies to:<br />
Oracle Lite - Version: 10.0.0.0.1 to 10.3.0.3.0 - Release: 10.0 to 10.3</strong><br />
Information in this document applies to any platform.<br />
<strong>What is being announced?</strong><br />
We are announcing changes to the Oracle Database Lite product.</p>
<p>Some components will be shifted to maintenance mode, while others will continue to be actively developed and enhanced.</p>
<p>The Oracle Lite Client Database, as well as Branch Office and the Web-to-Go components, will be moved to maintenance mode.<br />
The core underlying framework, including the Mobile Sync Client and Server, Device Manager and the Mobile Device Workbench, will continue to be actively developed.</p>
<p>Oracle Database Lite will be removed from the pricelist at the end of Q2FY11 (end of November 2010).<br />
<strong>What do you need to do?</strong><br />
The primary product Oracle recommends to replace the Lite Client Database is the Oracle Berkeley Database, which is a fast, highly scalable, embeddable, transactional database.</p>
<p>Berkeley DB 11.2.5.0.21 has been enhanced with SQL support (SQLite SQL), in addition to its traditional key/value store interface. This is for situations where the customer requires a lightweight embedded database, with the ability to synchronize with the Oracle Database.</p>
<p>In situations where a multiuser database server is required, such as in existing Branch Office configurations, Oracle Standard Edition One is the recommended alternative. However, these products do not overlap 100%, so some application changes may be required.</p>
<p>In cases where customers are using Web-to-Go on the client side to run JAVA Servlets, the customer will need to replace Web-to-Go with a Servlet container of their choosing. Oracle is not offering an official mobile Servlet container at this time.</p>
<p><strong>Who to contact for more information?</strong><br />
Oracle Database Lite will continue to be supported by the Oracle Support Team. For release 10.3, Premier Support will continue until December 2012. After that, Extended Support will continue until the end of 2015.</p>
<p>During both the Premier and Extended Support phases, Oracle Sustaining Engineering will provide program updates, fixes, security alerts, and critical patch updates to Oracle Database Lite customers. As with all Oracle products, support is available indefinitely to customers who purchase Lifetime Support.</p>
<p>Those customers will continue to have access to Oracle’s repository of security alerts, patches, solutions, and other documentation. Lifetime Support will be available beyond 2015, for as long as necessary.</p>
<p>For more information regarding the Oracle Support Policy, please refer to the Technical Support Policies page:<br />
http://www.oracle.com/support/policies.htm
 </p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.rekounas.org/2010/08/04/changes-to-oracle-lite-database-components-coming/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Oracle ADF and Mobile Server for BlackBerry</title>
		<link>http://www.rekounas.org/2010/04/08/oracle-adf-and-mobile-server-for-blackberry/</link>
		<comments>http://www.rekounas.org/2010/04/08/oracle-adf-and-mobile-server-for-blackberry/#comments</comments>
		<pubDate>Thu, 08 Apr 2010 12:11:12 +0000</pubDate>
		<dc:creator>rekounas</dc:creator>
		
		<category><![CDATA[Mobile ADF]]></category>

		<category><![CDATA[SQLite]]></category>

		<guid isPermaLink="false">http://www.rekounas.org/?p=100</guid>
		<description><![CDATA[Here is a demo of a ADF Mobile Broweser and ADF Mobile Client.  In the demo, they use Oracle Mobile Server for synchronization with a SQLite database.

]]></description>
			<content:encoded><![CDATA[<p>Here is a demo of a ADF Mobile Broweser and ADF Mobile Client.  In the demo, they use Oracle Mobile Server for synchronization with a SQLite database.</p>
<p><object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/6LvUDCbCKQg&#038;hl=en_US&#038;fs=1&#038;"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/6LvUDCbCKQg&#038;hl=en_US&#038;fs=1&#038;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.rekounas.org/2010/04/08/oracle-adf-and-mobile-server-for-blackberry/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Gaining performance out of Queue-Based refresh</title>
		<link>http://www.rekounas.org/2010/03/09/gaining-performance-out-of-queue-based-refresh/</link>
		<comments>http://www.rekounas.org/2010/03/09/gaining-performance-out-of-queue-based-refresh/#comments</comments>
		<pubDate>Tue, 09 Mar 2010 10:44:50 +0000</pubDate>
		<dc:creator>rekounas</dc:creator>
		
		<category><![CDATA[Oracle Lite]]></category>

		<guid isPermaLink="false">http://www.rekounas.org/?p=99</guid>
		<description><![CDATA[We have all been there.  Users start synching, MGP kicks in, some junior SQL developer has written a poorly executing batch job (yeah, I am blaming the junior PL/SQL guy) and all of the sudden, everything comes to a halt. Your online community can&#8217;t perform any transactions, your syncing users are just sitting there twiddling [...]]]></description>
			<content:encoded><![CDATA[<p>We have all been there.  Users start synching, MGP kicks in, some junior SQL developer has written a poorly executing batch job (yeah, I am blaming the junior PL/SQL guy) and all of the sudden, everything comes to a halt. Your online community can&#8217;t perform any transactions, your syncing users are just sitting there twiddling their thumbs, support staff is getting all kinds of alerts and calls, the poorly written PL/SQL batch job that the junior developer wrote isn&#8217;t finishing, and management is coming to you looking for answers because this is the 3rd time in the last month that this scenario has happened&#8230; the perfect storm!</p>
<p>What do you do?  You could tune the existing queries for your publication items to improve sync and MGP performance.  Of course, there is always that poorly written and timed PL/SQL that the junior guy wrote that is inserting/deleting 1 million records in one of your core tables that you are synchronizing to your application, and just when you notice this happening along with syncing or MGP, you notice transactions in C$ALL_CLIENT_ITEMS is blocking all kinds of sessions.  Oracle recommends setting the following in webtogo.ora</p>
<p>SKIP_INQ_CHK_BFR_COMPOSE=NO<br />
DO_APPLY_BFR_COMPOSE=NO</p>
<p>I prefer going to queue based synchronization for situations like this.  Why?   The first things is that it removes triggers on those tables that are usually affected by the blocking locks.  Secondly, if you have bulk operations on a table, the MGP LOG process can get bogged down with logging all the transactions and you often see deadlocks when this happens not to mention blocking locks if the deadlock doesn&#8217;t cancel out the MGP process quickly enough.</p>
<p>I am assuming if you are reading this, you are probably familiar with the Mobile Workbench and have created your publication items via that mechanism and felt really good about the fact that you don&#8217;t have to write all kinds of stored procedures to perform your synchronizations.  Well, roll up your sleeves, because you will have to write some PL/SQL to get a queue-based refresh working.  In the mobile development kit, there is a tutorial on how to go about creating a queue-based item (Location %ORACLE_HOME%\Mobile\Sdk\samples\Sync\win32\QBasedPI\)</p>
<p>There is a readme.txt in that folder.  I am not going to repost the tutorial, but I will talk about the aspects you should be aware of.  The tutorial basically give a complete-refresh example. This would not be the best example for most applications as there are also bi-directional publication items that you need to worry about.  The real piece of the code you should be concentrating on is the DOWNLOAD_INIT within the package.  This is your download logic.  Your logic should contain the following logic:</p>
<ul>
<li>handles physical deletes</li>
<li>handles inserts</li>
<li>handles update</li>
<li>handles logical deletes</li>
</ul>
<p>Their example only handles inserts.  If you want your publication item to perform incremental syncs, you will need to have a mechanism in that table that indicates records that need to be updated, inserted, or deleted. Here is a template of the mechanism I use.  In our tables, we have an AUDIT_DATE field.  A timestamp or date field is really useful in determining if a record has been updated.  Of course, you may need a trigger on the table or trust those junior developers to have code in place to update that AUDIT_DATE field.</p>
<p>The physical delete:<br />
<code>DELETE CTM$CTM$&lt;TABLE_NAME&gt;<br />
WHERE CLID$$CS = CLIENTID AND DMLTYPE$$ = 'D';</code></p>
<p>The insert logic:<br />
<code>INSERT INTO CTM$&lt;TABLE_NAME&gt;(CLID$$, FIELDS1, FIELDS2, DMLTYPE$$, TRANSID$$)<br />
SELECT CLIENTID, FIELDS1, FIELDS2, 'I', CURR_TRAN FROM &lt;TABLE_NAME&gt;<br />
WHERE NOT EXISTS (SELECT 'X' FROM CTM$&lt;TABLE_NAME&gt;<br />
WHERE &lt;MATCH PRIMARY KEYS HERE&gt;)</code></p>
<p>The update logic:<br />
<code>UPDATE CTM$&lt;TABLE_NAME&gt;</code></p>
<p>The logical delete:<br />
<code>UPDATE CTM$&lt;TABLE_NAME&gt;<br />
SET TRANID$$ = CURR_TRAN,<br />
DMLTYPE$$ = &#8216;D&#8217;<br />
WHERE AUDIT_DATE &lt; TO_CHAR( ADD_MONTHS( SYSDATE, -6 )) AND CLID$$CS = CLIENTID;</code></p>
<p>Now, in my example, I just keep 6 months of data on the client. At the end of the day, you can decide all aspects of synchronization. Customize the synchronization to fit your business needs.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rekounas.org/2010/03/09/gaining-performance-out-of-queue-based-refresh/feed/</wfw:commentRss>
		</item>
		<item>
		<title>How to create an auto increment field in Oracle Lite</title>
		<link>http://www.rekounas.org/2009/10/24/how-to-create-an-auto-increment-field-in-oracle-lite/</link>
		<comments>http://www.rekounas.org/2009/10/24/how-to-create-an-auto-increment-field-in-oracle-lite/#comments</comments>
		<pubDate>Sun, 25 Oct 2009 03:47:26 +0000</pubDate>
		<dc:creator>rekounas</dc:creator>
		
		<category><![CDATA[Oracle Lite]]></category>

		<category><![CDATA[Java]]></category>

		<category><![CDATA[Stored Procedures]]></category>

		<guid isPermaLink="false">http://www.rekounas.org/?p=98</guid>
		<description><![CDATA[I bet you thought you could make an auto increment field in Oracle Lite the same way you make it in Oracle right?  Well, you can&#8217;t do it the same way because Oracle Lite does not support PL/SQL.  It does however support C, C++, C#, and Java stored procedures.  We will review [...]]]></description>
			<content:encoded><![CDATA[<p>I bet you thought you could make an auto increment field in Oracle Lite the same way you make it in Oracle right?  Well, you can&#8217;t do it the same way because Oracle Lite does not support PL/SQL.  It does however support C, C++, C#, and Java stored procedures.  We will review creating auto-increment fields in both the Enterprise and the Lite databases.</p>
<p>Lets review the way you create a auto-increment field in Oracle:<br />
<code><br />
//Step 1:<br />
CREATE TABLE TEST_TABLE (<br />
COL1 NUMBER,<br />
COL2 VARCHAR2(20),<br />
CONSTRAINT TEST_TABLE_PK PRIMARY KEY (COL1)<br />
);<br />
</code></p>
<p><code><br />
//Step 2:<br />
CREATE SEQUENCE TEST_SEQ<br />
START WITH 1<br />
INCREMENT BY 1;<br />
</code></p>
<p><code><br />
//Step 3:<br />
CREATE TRIGGER TEST_TRIGGER<br />
BEFORE INSERT ON TEST_TABLE<br />
FOR EACH ROW<br />
BEGIN<br />
SELECT TEST_SEQ.NEXTVAL INTO :NEW.COL1 FROM DUAL;<br />
END;<br />
</code></p>
<p>And we are done.</p>
<p>Now here are the steps for doing it in Oracle Lite:</p>
<p><code>
<pre>
//Step 1: Create and Compile the Java Code.  Call the Java file JavaTrigger.java.  You may also have to compile using JDK 1.4 as even Oracle 10g is known not to support 1.5 yet.
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class JavaTrigger {
   public static void autoIncrement(Connection conn, int newNum[]) throws SQLException {
      try {
         Statement stmt = null;
         ResultSet rs = null;
         stmt = conn.createStatement();
         rs = stmt.executeQuery(&#8221;SELECT TEST_SEQ.NEXTVAL FROM DUAL&#8221;);
         if (rs.next()) {
            newNum[0] = rs.getInt(1);
         }
      } catch (SQLException e) {
         System.err.println(e.getMessage());
      }
   }
}</pre>
<p></code></p>
<p><code><br />
//Step 2: Load the file into the database<br />
CREATE JAVA CLASS USING BFILE ('C:\OracleLiteJava\StoredProcedure\Sample\classes\','JavaTrigger.class');<br />
</code></p>
<p><code><br />
//Step 3: Create a Stored Procedure in the database<br />
CREATE OR REPLACE PROCEDURE AUTO_INCREMENT(NEW_ID IN OUT INT) AS LANGUAGE JAVA NAME 'JavaTrigger.autoIncrement(java.sql.Connection, int[])&#8217;;<br />
</code></p>
<p><code><br />
//Step 4:<br />
CREATE OR REPLACE TRIGGER TEST_TABLE_INSERT_TRIG BEFORE INSERT ON TEST_TABLE FOR EACH ROW AUTO_INCREMENT( NEW.COL1);<br />
</code></p>
<p><code><br />
//Working Example:<br />
SQL&gt; INSERT INTO TEST_TABLE( COL2) VALUES ('GREG');<br />
1 row(s) created<br />
SQL&gt; DIR TEST_TABLE;<br />
COL1 | COL2<br />
-----+-----<br />
6340 | GREG<br />
</code></p>
<p>For more documentation on Stored Procedures in Oracle Lite, check out the online documentation <a href="http://download.oracle.com/docs/cd/E12095_01/doc.10302/e12548/cjstproc.htm#OLCLI017">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rekounas.org/2009/10/24/how-to-create-an-auto-increment-field-in-oracle-lite/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Oracle OpenWorld 2009 Live Stream</title>
		<link>http://www.rekounas.org/2009/10/13/oracle-openworld-2009-live-stream/</link>
		<comments>http://www.rekounas.org/2009/10/13/oracle-openworld-2009-live-stream/#comments</comments>
		<pubDate>Tue, 13 Oct 2009 10:12:34 +0000</pubDate>
		<dc:creator>rekounas</dc:creator>
		
		<category><![CDATA[Oracle OpenWorld]]></category>

		<guid isPermaLink="false">http://www.rekounas.org/?p=93</guid>
		<description><![CDATA[I couldn&#8217;t get to San Fransisco this year for OpenWorld&#8230; but I can always watch it via video stream.

]]></description>
			<content:encoded><![CDATA[<p>I couldn&#8217;t get to San Fransisco this year for OpenWorld&#8230; but I can always watch it via video stream.</p>
<p><script src="http://static.livestream.com/scripts/playerv2.js?channel=openworldlive&#038;layout=playerEmbedDefault&#038;backgroundColor=0xffffff&#038;backgroundAlpha=1&#038;backgroundGradientStrength=0&#038;chromeColor=0x000000&#038;headerBarGlossEnabled=false&#038;controlBarGlossEnabled=false&#038;chatInputGlossEnabled=false&#038;uiWhite=true&#038;uiAlpha=0.5&#038;uiSelectedAlpha=0.8&#038;dropShadowEnabled=false&#038;dropShadowHorizontalDistance=10&#038;dropShadowVerticalDistance=10&#038;paddingLeft=0&#038;paddingRight=0&#038;paddingTop=0&#038;paddingBottom=0&#038;cornerRadius=0&#038;backToDirectoryURL=null&#038;bannerURL=null&#038;bannerText=null&#038;bannerWidth=320&#038;bannerHeight=50&#038;showViewers=true&#038;embedEnabled=true&#038;chatEnabled=false&#038;onDemandEnabled=true&#038;programGuideEnabled=false&#038;fullScreenEnabled=true&#038;reportAbuseEnabled=false&#038;gridEnabled=false&#038;initialIsOn=false&#038;initialIsMute=false&#038;initialVolume=10&#038;contentId=null&#038;initThumbUrl=null&#038;playeraspectwidth=16&#038;playeraspectheight=9&#038;mogulusLogoEnabled=true&#038;width=400&#038;height=400&#038;wmode=window" type="text/javascript"></script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.rekounas.org/2009/10/13/oracle-openworld-2009-live-stream/feed/</wfw:commentRss>
		</item>
		<item>
		<title>What is a Oracle Lite developer made of?</title>
		<link>http://www.rekounas.org/2009/09/21/what-is-a-oracle-lite-developer-made-of/</link>
		<comments>http://www.rekounas.org/2009/09/21/what-is-a-oracle-lite-developer-made-of/#comments</comments>
		<pubDate>Mon, 21 Sep 2009 17:14:03 +0000</pubDate>
		<dc:creator>rekounas</dc:creator>
		
		<category><![CDATA[Oracle Lite]]></category>

		<guid isPermaLink="false">http://www.rekounas.org/?p=91</guid>
		<description><![CDATA[So, you are starting an IT project and there is a need for a disconnected component and you require Oracle Lite for your project.  What do you do?  Most people seem to dump the responsibility on the DBA.  Probably not the best move.  Not because they can&#8217;t handle the technology, but because they are often [...]]]></description>
			<content:encoded><![CDATA[<p>So, you are starting an IT project and there is a need for a disconnected component and you require Oracle Lite for your project.  What do you do?  Most people seem to dump the responsibility on the DBA.  Probably not the best move.  Not because they can&#8217;t handle the technology, but because they are often far too busy on their day-to-day responsibilities to deal with learning Oracle Lite and properly implementing it into your project.  How about the .Net or Java guy/gal?  Maybe, if they have extensive Oracle SQL tuning experience.  As a project lead you head to your recruiting department and you ask for them to find someone with Oracle Lite experience.  Don&#8217;t be surprised they don&#8217;t find a lot of people with Oracle Lite skills or to the level of experience your project may require.  Then, how do you go about interviewing this person and identifying if they are the right candidate.</p>
<p>How do you find the right person.</p>
<ul>
<li>Obviously ask them how many projects they have worked on with Oracle Lite or how many years they have working with the product.  Standard question for any technology.</li>
<li>Ask them the size and scope of the project (users/publications/publication items).</li>
<li>What technologies within Oracle Lite did they use?  Win32, WinCE, OC4J, Webtogo, Symbian, etc.</li>
<li>For the more advanced questions, you could ask them about the polite.ini and the webtogo.ora files and what are their functions.</li>
<li>Asked them if they have used Partition Maps, Shared Maps, Cached Publication Items.  If they have used these, then there is a good chance that they have worked on a system with considerable amounts of data and that they probably have performed query tuning.</li>
<li>Ask them if they have used CONSPERF and what is it&#8217;s function.</li>
<li>If they have used Oracle Application Server (OAS), then ask them if they have set up a farm and to describe the process.  You may want to ask them what is the function of OPMN, but it&#8217;s not as important if they don&#8217;t know.  This question will demonstrate their expertise with OAS (But I think Oracle Lite will be using Weblogic starting 10.3.0.3 release for the server).</li>
</ul>
<p>If you do have an IT project that requires Oracle Lite as your solution, finding a good Oracle Lite resource with experience will be difficult but rewarding.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rekounas.org/2009/09/21/what-is-a-oracle-lite-developer-made-of/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Testing Concurrent Synchronization in Oracle Lite</title>
		<link>http://www.rekounas.org/2009/05/11/90/</link>
		<comments>http://www.rekounas.org/2009/05/11/90/#comments</comments>
		<pubDate>Mon, 11 May 2009 18:03:39 +0000</pubDate>
		<dc:creator>rekounas</dc:creator>
		
		<category><![CDATA[Oracle Lite]]></category>

		<guid isPermaLink="false">http://www.rekounas.org/?p=90</guid>
		<description><![CDATA[So, you are all ready to go. Your application has gone through some final testing and all that is really left is to perform some minor performance tweaks here and there and clean up some bugs. Then someone in the rooms asks a question, &#8220;How will performance be during concurrent synchronizations? How will it affect [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;">So, you are all ready to go. Your application has gone through some final testing and all that is really left is to perform some minor performance tweaks here and there and clean up some bugs. Then someone in the rooms asks a question, &#8220;How will performance be during concurrent synchronizations? How will it affect the rest of the database?&#8221; So now you are probably sweating a bit because you really haven&#8217;t thought about it. An individual synchronizing isn&#8217;t too bad, but have you thought about 5, 10, 15, 50? Maybe not. And even if you have thought about it, how do you test this? I have been involved in many releases and this is always a bit of a challenge. You may be thinking of using something like LoadRunner, but this doesn&#8217;t work well. The next thing to do is to grab 10 - 20 devices, install the Mobile Client and rapidly click sync on each device to get the number of concurrent syncs your are testing your system for. Not the sexiest solution in the world, but it works. The other solution I use is a Java/perl solution Oracle development passed along to me a few years ago. You install the software on one machine. You create the users TEST(1&#8230;N) on the server and assign them to the application and set their data subset paraments. You then run a perl script to set up the TEST users on your machine. Finally you just the Java code to simulate the concurrent syncs. This worked very well, but for some reason, all syncs were Complete Refresh. So the test was worst case scenario.</p>
<p>Here is a picture of a test scenario we had set up. We had 10 laptops and they were synchronizing Webtgo-OC4J and Win32. They were all going through the same router and I think 10 out of 10 succeeded.</p>
<p><center><a href="http://www.rekounas.org/wp-content/uploads/2009/05/concurrent.jpg"><img class="alignnone size-medium wp-image-89" title="Concurrent Synchronization Oracle Lite" src="http://www.rekounas.org/wp-content/uploads/2009/05/concurrent-300x225.jpg" alt="10 Laptops performing concurrent synchronization." width="300" height="225" /></a></center></p>
<p>Your third option for testing concurrency is by contacting an Oracle Lite guru <img src='http://www.rekounas.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> He might be able to give you a hand with your performance testing.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rekounas.org/2009/05/11/90/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Patching Oracle Lite in Unix</title>
		<link>http://www.rekounas.org/2009/03/31/patching-oracle-lite-in-unix/</link>
		<comments>http://www.rekounas.org/2009/03/31/patching-oracle-lite-in-unix/#comments</comments>
		<pubDate>Tue, 31 Mar 2009 17:25:50 +0000</pubDate>
		<dc:creator>rekounas</dc:creator>
		
		<category><![CDATA[Oracle Lite]]></category>

		<guid isPermaLink="false">http://www.rekounas.org/?p=87</guid>
		<description><![CDATA[Ran into an issue today that I almost forgot about. It was during patching an Mobile Server on a Unix platform. The issue that I ran into was the following:
1. Stopped the server
2. Installed the patch
3. Tried to log into mobile manager
4. Got the following error:
WTG-10118: Mobile Server is not connected to the Repository
WTG-10117: Please [...]]]></description>
			<content:encoded><![CDATA[<p>Ran into an issue today that I almost forgot about. It was during patching an Mobile Server on a Unix platform. The issue that I ran into was the following:</p>
<p>1. Stopped the server<br />
2. Installed the patch<br />
3. Tried to log into mobile manager<br />
4. Got the following error:<br />
WTG-10118: Mobile Server is not connected to the Repository<br />
WTG-10117: Please contact your system administrator</p>
<p>To find the problem I went to the readme of the patch that stated that the web.xml file might get changed during the install. So, I opened the file and the fix is the following:</p>
<p>Find your web.xml file</p>
<pre>
<code>
&lt;ORACLE_HOME&gt;/mobile/server/admin/repository/webtogo/WEB-INF/web.xml
or
&lt;ORACLE_HOME&gt;/j2ee/mobileserver/applications/mobileserver/webtogo/WEB-INF/web.xml
or
&lt;ORACLE_HOME&gt;/mobile_oc4j/j2ee/mobileserver/applications/mobileserver/webtogo/WEB-INF/web.xml
</code>
</pre>
<p>Modify the line in the file from:</p>
<pre>
<code>
&lt;param-value&gt;%ORACLE_HOME%\mobile\server\bin\webtogo.ora&lt;/param-value&gt;

to

&lt;param-value&gt;/export/home/oramobile/mobile/server/bin/webtogo.ora&lt;/param-value&gt;
</code>
</pre>
<p>The README.TXT tells me to go into my ./patch_storage/6630384/&#8230;.. directory.  But I couldn&#8217;t find it.  So, if you find yourself in the same situation that I was in, the solution has been posted.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rekounas.org/2009/03/31/patching-oracle-lite-in-unix/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
