<?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>Sybase Blogs</title>
	<link>http://www.sybase.com/resources/blogs</link>
	<description>A master feed for all Sybase blogs kept on http://blogs.sybase.com.</description>
	<pubDate>Mon, 21 Apr 2008 12:00:00 EST</pubDate>
	<language>en</language>
	<atom:link href="http://blogs.sybase.com/managefeed.xml" rel="self" type="application/rss+xml" />

<item><title>SQL/RPR available for initial public review</title><link>http://iablog.sybase.com/paulley/?p=2664</link><comments>http://iablog.sybase.com/paulley/?p=2664#comments</comments><pubDate>Fri, 11 May 2012 16:36:36 EST</pubDate><dc:creator>Glenn Paulley, Director, Engineering</dc:creator><category>SQL Standard</category><guid>http://iablog.sybase.com/paulley/?p=2664</guid><description>SQL/RPR (Row Pattern Matching), a proposed new part to the ISO SQL standard under development in the United States under ANSI is now available for initial public review and comment.

Row-pattern matching in the standard is something I have &lt;a href=&quot;http:...</description><content:encoded>SQL/RPR (Row Pattern Matching), a proposed new part to the ISO SQL standard under development in the United States under ANSI is now available for initial public review and comment.&lt;p&gt;&lt;p&gt;Row-pattern matching in the standard is something I have &lt;a href=&quot;http://iablog.sybase.com/paulley/2008/04/sql-row-pattern-matching&quot;&gt;blogged about previously&lt;/a&gt;, and has seen some &lt;a href=&quot;http://iablog.sybase.com/paulley/2008/06/a-new-proposal-for-row-pattern-matching-sequence-olap/&quot;&gt;other initiatives&lt;/a&gt; in the academic literature as well. &lt;p&gt;&lt;p&gt;SQL/RPR is all about complex analysis of data streams, though in a SQL context (ie. over persistent data) rather than over a streaming database system. The big deal is supporting predicates whose expressions can refer to different tuples of an ordered intermediate result simultaneously.&lt;p&gt;&lt;p&gt; Here&apos;s the overview from RPR from the INCITS website:&lt;p&gt;&lt;p&gt;&lt;blockquote&gt;&lt;p&gt;This standard will specify the syntax and semantics of a new SQL capability to perform complex queries involving the relationships between many rows in a single (virtual or base) table. Detection and use of such relationships are critical aspects of many high-value applications. Sometimes called complex event processing, many business processes are driven from sequences of events. For example, security applications require the ability to detect unusual behavior definable with regular expressions. Financial applications that detect stock patterns are widely demanded. Fraud detection applications must recognize patterns in financial and other transactions. RFID processing requires the ability to recognize valid paths for RFID tags.&lt;p&gt;&lt;p&gt;Extremely high interest in these capabilities has been shown by financial institutions, by the USA Department of Homeland Security and other government agencies, by large retailers and their suppliers, and transportation companies, among others.&lt;p&gt;&lt;p&gt;Upon approval of the national SQL/RPR standard, which will be written as an amendment to Part 2 Foundation [FoundFDIS] of [SQL 2008], H2 [sic; should be DM32.2] expects to submit it to ISO/IEC JTC 1 possibly using the Fast-Track process with proposed maintenance in JTC 1/SC32 if approved.&lt;p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;p&gt;The public review period is from now until June 18, 2012. The draft document is available &lt;a href=&quot;http://www.techstreet.com/cgi-bin/detail?doc_no=incits|500_draft;product_id=1830309&quot;&gt;here&lt;/a&gt; currently for a price of US$30. The $30 fee appears to be in error as the intent of the public review was to make the draft of RPR freely available. I hope to have an update on that in the very near future.</content:encoded><wfw:commentRss>http://iablog.sybase.com/paulley/?p=2664/feed/</wfw:commentRss></item>
<item><title>N. Carolina PowerBuilder User Group Meeting</title><link>http://blogs.sybase.com/powerbuilder/?p=1409</link><comments>http://blogs.sybase.com/powerbuilder/?p=1409#comments</comments><pubDate>Wed, 02 May 2012 07:00:15 EST</pubDate><dc:creator>John Strano, PowerBuilder Evangelist</dc:creator><category>News</category><category>Events</category><category>PowerBuilder Integrated Tech</category><guid>http://blogs.sybase.com/powerbuilder/?p=1409</guid><description>Thursday, May 10th 6:00pm - 8:00pm

Location: 10735 David Taylor Drive, Suite 100; Charlotte, NC 28262

Topics include an overview of PowerGen build tool and using .NET visual controls in PowerBuilder Classic.

*** The meeting will be available as a ...</description><content:encoded>Thursday, May 10th 6:00pm - 8:00pm&lt;p&gt;&lt;p&gt;Location: 10735 David Taylor Drive, Suite 100; Charlotte, NC 28262&lt;p&gt;&lt;p&gt;Topics include an overview of PowerGen build tool and using .NET visual controls in PowerBuilder Classic.&lt;p&gt;&lt;p&gt;*** The meeting will be available as a Microsoft Livemeeting session for any virtual attendees.  Your registration confirmation email will contain the LiveMeeting link.&lt;p&gt;&lt;p&gt;Register: &lt;a href=&quot;http://my.isug.com/e/in/eid=134&quot;&gt;http://my.isug.com/e/in/eid=134&lt;/a&gt;</content:encoded><wfw:commentRss>http://blogs.sybase.com/powerbuilder/?p=1409/feed/</wfw:commentRss></item>
<item><title>Call for participation: DBTEST 2012 </title><link>http://iablog.sybase.com/paulley/?p=2660</link><comments>http://iablog.sybase.com/paulley/?p=2660#comments</comments><pubDate>Mon, 16 Apr 2012 10:51:58 EST</pubDate><dc:creator>Glenn Paulley, Director, Engineering</dc:creator><category>Self-managing database systems</category><category>Computer Science education</category><guid>http://iablog.sybase.com/paulley/?p=2660</guid><description>The &lt;a href=&quot;http://dbtest2012.comp.polyu.edu.hk/index.htm&quot;&gt;Fifth International Workshop on Testing Database Systems&lt;/a&gt; will be held on 21 May 2012, co-located with the &lt;a href=&quot;http://www.sigmod.org/2012/&quot;&gt;ACM SIGMOD Conference&lt;/a&gt;...</description><content:encoded>The &lt;a href=&quot;http://dbtest2012.comp.polyu.edu.hk/index.htm&quot;&gt;Fifth International Workshop on Testing Database Systems&lt;/a&gt; will be held on 21 May 2012, co-located with the &lt;a href=&quot;http://www.sigmod.org/2012/&quot;&gt;ACM SIGMOD Conference&lt;/a&gt; held in Scottsdale, Arizona. The aim of the Workshop is to bring together academics and practitioners to discuss the complexities of testing DBMS systems and applications:&lt;p&gt;&lt;p&gt;&lt;blockquote&gt;&lt;p&gt;There is significant interest in testing database systems and applications within both the database and the software engineering communities. The goal of DBTest 2012 is to bring together researchers and practitioners from academia and industry to discuss key problems and ideas related to testing database systems and applications. We expect that this collaboration will facilitate the creation of research agendas and new techniques to address testing problems for database systems and database applications. The long-term objective of such work is to reduce the cost and time required to test and tune database products so that users and vendors can spend more time and energy on actual innovations. &lt;p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;p&gt;The &lt;a href=&quot;http://dbtest2012.comp.polyu.edu.hk/Program.htm&quot;&gt;workshop program&lt;/a&gt; was finalized over the weekend by workshop co-chairs &lt;a href=&quot;http://www4.comp.polyu.edu.hk/~cscllo/&quot;&gt;Eric Lo&lt;/a&gt; of Hong Kong Polytechnic and &lt;a href=&quot;http://database-research.com/about/&quot;&gt;Florian Waas&lt;/a&gt; of EMC/Greenplum and the keynote talk by &lt;a href=&quot;http://www.cs.ox.ac.uk/people/oege.demoor/&quot;&gt;Oege de Moor&lt;/a&gt;, along with the 12 accepted papers, chosen from the 26 submissions, are all interesting and should make for a great workshop.</content:encoded><wfw:commentRss>http://iablog.sybase.com/paulley/?p=2660/feed/</wfw:commentRss></item>
<item><title>Survey to Mold &quot;Appeon Mobile&quot;</title><link>http://blogs.sybase.com/powerbuilder/?p=1400</link><comments>http://blogs.sybase.com/powerbuilder/?p=1400#comments</comments><pubDate>Thu, 29 Mar 2012 11:25:41 EST</pubDate><dc:creator>John Strano, PowerBuilder Evangelist</dc:creator><category>PowerBuilder Integrated Tech</category><category>News</category><guid>http://blogs.sybase.com/powerbuilder/?p=1400</guid><description>&lt;strong&gt;Appeon Mobile Survey&lt;/strong&gt;

&lt;a href=&quot;http://blogs.sybase.com/powerbuilder/wp-content/uploads/2012/03/appeonlogo.jpg&quot;&gt;...</description><content:encoded>&lt;strong&gt;Appeon Mobile Survey&lt;/strong&gt;&lt;p&gt;&lt;p&gt;&lt;a href=&quot;http://blogs.sybase.com/powerbuilder/wp-content/uploads/2012/03/appeonlogo.jpg&quot;&gt;&lt;img class=&quot;alignleft size-full wp-image-1401&quot; title=&quot;appeonlogo&quot; src=&quot;http://blogs.sybase.com/powerbuilder/wp-content/uploads/2012/03/appeonlogo.jpg&quot; alt=&quot;&quot; width=&quot;284&quot; height=&quot;36&quot; /&gt;&lt;/a&gt;&lt;p&gt;&lt;p&gt;Appeon Mobile will create native mobile apps using your PowerBuilder skills!&lt;p&gt;Help create a mobile solution for PowerBuilder adapted to your needs by participating in this survey!&lt;p&gt;&lt;p&gt;&lt;a href=&quot;http://tinyurl.com/AppeonSurvey&quot; target=&quot;_blank&quot;&gt;http://tinyurl.com/AppeonSurvey&lt;/a&gt;</content:encoded><wfw:commentRss>http://blogs.sybase.com/powerbuilder/?p=1400/feed/</wfw:commentRss></item>
<item><title>Introduction to Customization Studio 2012</title><link>http://blogs.sybase.com/powerbuilder/?p=1386</link><comments>http://blogs.sybase.com/powerbuilder/?p=1386#comments</comments><pubDate>Fri, 16 Mar 2012 00:01:26 EST</pubDate><dc:creator>John Strano, PowerBuilder Evangelist</dc:creator><category>Events</category><category>News</category><guid>http://blogs.sybase.com/powerbuilder/?p=1386</guid><description>&lt;a href=&quot;http://blogs.sybase.com/powerbuilder/wp-content/uploads/2010/10/PBTVLogo.gif&quot;&gt;...</description><content:encoded>&lt;a href=&quot;http://blogs.sybase.com/powerbuilder/wp-content/uploads/2010/10/PBTVLogo.gif&quot;&gt;&lt;img class=&quot;alignleft size-full wp-image-897&quot; title=&quot;PBTVLogo&quot; src=&quot;http://blogs.sybase.com/powerbuilder/wp-content/uploads/2010/10/PBTVLogo.gif&quot; alt=&quot;&quot; width=&quot;274&quot; height=&quot;200&quot; /&gt;&lt;/a&gt;Thursday March 22nd 2012&lt;p&gt;at 12:00 PM EST (New York) - 17h00 CET (Paris)&lt;p&gt;&lt;p&gt;Imagine a PowerBuilder extension that would allow end-users to modify applications themselves! Customization Studio lets them edit a window as if it were a simple MS Office document. Users modify the executable version of the application, without changing the source code, creating an immediate result.&lt;p&gt;Customization Studio 2012 features a new application called &quot;NCS Designer&quot;; it provides tools designed for non-technical users. In this presentation, we will see how to use these tools to customize reports, add new items in your windows, modernize the look &amp;amp; feel of the application and more...&lt;p&gt;&lt;p&gt;Presenter: Christophe Dufourmantelle&lt;p&gt;&lt;p&gt;Register:&lt;p&gt;&lt;a href=&quot;http://powerbuilder.tv/index.php/en/upcoming-webinars/1-upcoming-webinars/152-introduction-to-customization-studio-2012&quot; target=&quot;_blank&quot;&gt;http://powerbuilder.tv/index.php/en/upcoming-webinars/1-upcoming-webinars/152-introduction-to-customization-studio-2012&lt;/a&gt;</content:encoded><wfw:commentRss>http://blogs.sybase.com/powerbuilder/?p=1386/feed/</wfw:commentRss></item>
<item><title>Limitations of proxy tables</title><link>http://iablog.sybase.com/paulley/?p=2648</link><comments>http://iablog.sybase.com/paulley/?p=2648#comments</comments><pubDate>Wed, 14 Mar 2012 02:22:18 EST</pubDate><dc:creator>Glenn Paulley, Director, Engineering</dc:creator><category>SQL Anywhere</category><guid>http://iablog.sybase.com/paulley/?p=2648</guid><description>Proxy tables, sometimes referred to Remote Data Access or OMNI, are a convenient way to query or modify tables in different databases all from the same connection. SQL Anywhere&apos;s proxy tables are an implementation of a loosely-coupled multidatabase system....</description><content:encoded>Proxy tables, sometimes referred to Remote Data Access or OMNI, are a convenient way to query or modify tables in different databases all from the same connection. SQL Anywhere&apos;s proxy tables are an implementation of a loosely-coupled multidatabase system. The underlying databases do not have to be SQL Anywhere databases - any data source that supports ODBC will do, so the underlying base table for the proxy can be an Oracle table, a Microsoft SQL Server table, even an Excel spreadsheet. Once the proxy table&apos;s schema is defined in the database&apos;s catalog, the table can be queried just like any other table as if it was defined as a local table in that database.&lt;p&gt;&lt;p&gt;That&apos;s the overall idea, anyway; but there are some caveats that get introduced as part of the implementation, and I&apos;d like to speak to one of these in particular. My post is prompted by a question from a longstanding SQL Anywhere customer, Frank Vestjens, who in early February in the NNTP newsgroup sybase.public.sqlanywhere.general queried about the following SQL batch:&lt;p&gt;&lt;p&gt;&lt;pre line=&quot;1&quot; lang=&quot;sql&quot;&gt;&lt;p&gt;begin&lt;p&gt;  declare dd date;&lt;p&gt;  declare tt time;&lt;p&gt;  declare resultaat numeric;&lt;p&gt;  //&lt;p&gt;  set dd = &apos;2012-06-07&apos;;&lt;p&gt;  set tt = &apos;15:45:00.000&apos;;&lt;p&gt;  //&lt;p&gt;  message dd + tt type info to console;&lt;p&gt;  //&lt;p&gt;  select first Id into resultaat&lt;p&gt;  from p_mmptankplanning&lt;p&gt;  where arrivalDate + IsNull(arrivaltime,&apos;00:00:00&apos;) &lt;= dd+tt&lt;p&gt;  order by arrivaldate+arrivalTime,departuredate+departureTime;&lt;p&gt;end&lt;p&gt;&lt;/pre&gt;&lt;p&gt;&lt;p&gt;The batch works fine with a local table &lt;code&gt;p_mmptankplanning&lt;/code&gt; but gives an error if the table is a proxy table; the error is &quot;Cannot convert 2012-06-0715:45:00.000 to a timestamp&quot;.&lt;p&gt;&lt;p&gt;&lt;h3&gt;Operator overloading&lt;/h3&gt;&lt;p&gt;&lt;p&gt;In SQL Anywhere, multidatabase requests are decomposed into SQL statements that are shipped over an ODBC connection to the underlying data source. In many cases, the complete SQL statement can be shipped to the underlying server, something we call &quot;full passthrough mode&quot; as no post-processing is required on the originating server - the server ships the query to the underlying DBMS, and that database system returns the result set which is percolated back to the client. Since the originating server is a SQL Anywhere server, the SQL dialect of the original statement must be understood by SQL Anywhere. If the underlying DBMS isn&apos;t SQL Anywhere, then the server&apos;s Remote Data Access support may make some minor syntactic changes to the statement, or try to compensate for missing functionality in the underlying server. &lt;p&gt;&lt;p&gt;The SQL statement sent to the underlying DBMS, whether or not the statement can be processed in full passthrough mode or in partial passthrough mode, is a string. Moreover, SQL Anywhere can ship &lt;code&gt;SELECT&lt;/code&gt;, &lt;code&gt;INSERT&lt;/code&gt;, &lt;code&gt;UPDATE&lt;/code&gt;, &lt;code&gt;DELETE&lt;/code&gt; and &lt;code&gt;MERGE&lt;/code&gt; statements to the underlying DBMS - among others - but lacks the ability to ship batches or procedure definitions. &lt;p&gt;&lt;p&gt;So in the query above, the problem is that the query refers to the date/time variables &lt;code&gt;dd&lt;/code&gt; and &lt;code&gt;tt&lt;/code&gt;, and uses the operator &lt;code&gt;+&lt;/code&gt; to combine them into a &lt;code&gt;TIMESTAMP&lt;/code&gt;. Since SQL Anywhere lacks the ability to ship an SQL batch, what gets shipped to the underlying DBMS server is the SQL statement&lt;p&gt;&lt;p&gt;&lt;pre line=&quot;1&quot; lang=&quot;sql&quot;&gt;&lt;p&gt;select first Id into resultaat&lt;p&gt;  from p_mmptankplanning&lt;p&gt;  where arrivalDate + IsNull(arrivaltime,&apos;00:00:00&apos;) &lt;=  &apos;2012-06-07&apos; + &apos;15:45:00.000&apos;&lt;p&gt;  order by arrivaldate+arrivalTime,departuredate+departureTime;&lt;p&gt;&lt;/pre&gt;&lt;p&gt;&lt;p&gt;and now the problem is more evident: in SQL Anywhere, the &apos;+&apos; operator is overloaded to support both operations on date/time types, &lt;strong&gt;and&lt;/strong&gt; on strings; with strings, &apos;+&apos; is string concatentation. When the statement above gets sent to the underlying SQL Anywhere server, it concatenates the two date/time strings to form the string  &apos;2012-06-0715:45:00.000&apos; - note no intervening blank - and this leads directly to the conversion error. Robust support for SQL batches would solve the problem, but we have no plans to introduce such support at this time. A workaround is to compose the desired &lt;code&gt;TIMESTAMP&lt;/code&gt; outside the query, so that when converted to a string the underlying query will give the desired semantics. However, even in that case care must be taken to make sure that the &lt;code&gt;DATE_ORDER&lt;/code&gt; and &lt;code&gt;DATEFORMAT&lt;/code&gt; option settings are compatibile across the servers involved. &lt;p&gt;&lt;p&gt;My thanks to my colleague Karim Khamis for his explanations of Remote Data Access internals.</content:encoded><wfw:commentRss>http://iablog.sybase.com/paulley/?p=2648/feed/</wfw:commentRss></item>
<item><title>NHibernate 3.3.0CR1 released</title><link>http://iablog.sybase.com/paulley/?p=2652</link><comments>http://iablog.sybase.com/paulley/?p=2652#comments</comments><pubDate>Tue, 13 Mar 2012 09:33:22 EST</pubDate><dc:creator>Glenn Paulley, Director, Engineering</dc:creator><category>NHibernate</category><guid>http://iablog.sybase.com/paulley/?p=2652</guid><description>Yesterday the first release candidate of NHibernate 3.3.0 was made available; you can find it &lt;a href=&quot;http://sourceforge.net/projects/nhibernate/files/NHibernate/3.3.0CR1/&quot;&gt;here&lt;/a&gt;...</description><content:encoded>Yesterday the first release candidate of NHibernate 3.3.0 was made available; you can find it &lt;a href=&quot;http://sourceforge.net/projects/nhibernate/files/NHibernate/3.3.0CR1/&quot;&gt;here&lt;/a&gt; on sourceforge.net. &lt;p&gt;&lt;p&gt;In addition to the numerous bug fixes for NHibernate&apos;s LINQ support, of interest to &lt;a href=&quot;http://www.sybase.com/products/databasemanagement/sqlanywhere&quot;&gt;SQL Anywhere&lt;/a&gt; users will be some bug fixes and changes for SQL Anywhere 12.0.1 that I have &lt;a href=&quot;http://iablog.sybase.com/paulley/?p=2499&quot;&gt;described previously&lt;/a&gt; in this forum. These changes include:&lt;p&gt;&lt;ul&gt;&lt;p&gt;&lt;li&gt;A fix to the type mappings in SybaseSQLAnywhere10Dialect for binary data to &lt;code&gt;LONG BINARY&lt;/code&gt;;&lt;p&gt;&lt;li&gt;A new driver module, &lt;code&gt;NHibernate.Driver.SybaseSQLAnywhereDotNet4Driver&lt;/code&gt;, linked to the &lt;a href=&quot;http://iablog.sybase.com/paulley/2010/01/new-sql-anywhere-12-nhibernate-dialect/&quot;&gt;SybaseSQLAnywhere12Dialect&lt;/a&gt;, to handle the renaming of the assemblies for the SQL Anywhere ADO.NET provider in SQL Anywhere version 12. Unfortunately, specifying a different assembly name for a .NET provider isn&apos;t a configuration parameter in NHibernate; the driver name is embedded directly in the NHibernate library.&lt;p&gt;&lt;/ul&gt;&lt;p&gt;&lt;p&gt;Thanks to &lt;a href=&quot;http://julian-maughan.blogspot.com/&quot;&gt;Julian Maughan&lt;/a&gt; for committing the changes to the NHibernate distribution.</content:encoded><wfw:commentRss>http://iablog.sybase.com/paulley/?p=2652/feed/</wfw:commentRss></item>
<item><title>Charlotte User Group Meeting</title><link>http://blogs.sybase.com/powerbuilder/?p=1395</link><comments>http://blogs.sybase.com/powerbuilder/?p=1395#comments</comments><pubDate>Mon, 05 Mar 2012 00:02:06 EST</pubDate><dc:creator>John Strano, PowerBuilder Evangelist</dc:creator><category>Events</category><category>News</category><guid>http://blogs.sybase.com/powerbuilder/?p=1395</guid><description>March 8th, 2012 6-8pm

&lt;a href=&quot;http://blogs.sybase.com/powerbuilder/wp-content/uploads/2011/11/isug_logo.gif&quot;&gt;...</description><content:encoded>March 8th, 2012 6-8pm&lt;p&gt;&lt;p&gt;&lt;a href=&quot;http://blogs.sybase.com/powerbuilder/wp-content/uploads/2011/11/isug_logo.gif&quot;&gt;&lt;img class=&quot;size-full wp-image-1265 alignnone&quot; title=&quot;isug_logo&quot; src=&quot;http://blogs.sybase.com/powerbuilder/wp-content/uploads/2011/11/isug_logo.gif&quot; alt=&quot;&quot; width=&quot;150&quot; height=&quot;118&quot; /&gt;&lt;/a&gt;&lt;p&gt;&lt;p&gt;Open Mic&apos; Night!&lt;p&gt;&lt;p&gt;So far, topics include:&lt;p&gt;&lt;ul&gt;&lt;p&gt;	&lt;li&gt;ASE/SQL Server database tips&lt;/li&gt;&lt;p&gt;	&lt;li&gt;Powerbuilder 12.5 Classic tips&lt;/li&gt;&lt;p&gt;	&lt;li&gt;PBTools application.&lt;p&gt;More to come.&lt;/li&gt;&lt;p&gt;&lt;/ul&gt;&lt;p&gt;The meeting will also be available as a Microsoft Livemeeting session for any virtual attendees.  Your registration confirmation email will contain the email link.&lt;p&gt;Location Details:&lt;p&gt;Offices of McKesson&lt;p&gt;10735 David Taylor Drive, Suite 100&lt;p&gt;Charlotte, NC 28262&lt;p&gt;&lt;p&gt;Register: &lt;a href=&quot;http://my.isug.com/e/in/eid=131&quot; target=&quot;_blank&quot;&gt;http://my.isug.com/e/in/eid=131&lt;/a&gt;</content:encoded><wfw:commentRss>http://blogs.sybase.com/powerbuilder/?p=1395/feed/</wfw:commentRss></item>
<item><title>Cómo hacer aplicaciones multitarea con PowerBuilder</title><link>http://blogs.sybase.com/powerbuilder/?p=1380</link><comments>http://blogs.sybase.com/powerbuilder/?p=1380#comments</comments><pubDate>Fri, 02 Mar 2012 13:05:48 EST</pubDate><dc:creator>John Strano, PowerBuilder Evangelist</dc:creator><category>News</category><category>Events</category><guid>http://blogs.sybase.com/powerbuilder/?p=1380</guid><description>Thursday March 8th 2012
at 09:00am CST (Ciudad de Mexico) / 16:00 CET (Madrid)

&lt;a href=&quot;http://blogs.sybase.com/powerbuilder/wp-content/uploads/2010/10/PBTVLogo.gif&quot;&gt;...</description><content:encoded>Thursday March 8th 2012&lt;p&gt;at 09:00am CST (Ciudad de Mexico) / 16:00 CET (Madrid)&lt;p&gt;&lt;p&gt;&lt;a href=&quot;http://blogs.sybase.com/powerbuilder/wp-content/uploads/2010/10/PBTVLogo.gif&quot;&gt;&lt;img class=&quot;alignleft size-full wp-image-897&quot; title=&quot;PBTVLogo&quot; src=&quot;http://blogs.sybase.com/powerbuilder/wp-content/uploads/2010/10/PBTVLogo.gif&quot; alt=&quot;&quot; width=&quot;274&quot; height=&quot;200&quot; /&gt;&lt;/a&gt;&lt;p&gt;&lt;p&gt;Cómo hacer aplicaciones multitarea con PowerBuilder&lt;p&gt;- Presented in Spanish -&lt;p&gt;&lt;p&gt;En este webinar realizaremos aplicaciones multitarea en versiones de Powerbuilder anteriores a la 12, para que se puedan ejecutar como procesos independientes para aprovechar al máximo el procesador y la memoria. También explicarán las nuevas funcionalidades y ventajas del trabajo multiproceso en PowerBuilder 12.5 utilizando funciones de PowerBuilder.NET.&lt;p&gt;&lt;p&gt;Presenter: Oscar Tobar&lt;p&gt;&lt;p&gt;Register:&lt;p&gt;&lt;a href=&quot;http://powerbuilder.tv/index.php/en/upcoming-webinars/1-upcoming-webinars/153-como-hacer-aplicaciones-multitarea-con-powerbuilder&quot; target=&quot;_blank&quot;&gt;http://powerbuilder.tv/index.php/en/upcoming-webinars/1-upcoming-webinars/153-como-hacer-aplicaciones-multitarea-con-powerbuilder&lt;/a&gt;</content:encoded><wfw:commentRss>http://blogs.sybase.com/powerbuilder/?p=1380/feed/</wfw:commentRss></item>
<item><title>Robustness and error handling</title><link>http://iablog.sybase.com/paulley/?p=2630</link><comments>http://iablog.sybase.com/paulley/?p=2630#comments</comments><pubDate>Wed, 29 Feb 2012 14:38:29 EST</pubDate><dc:creator>Glenn Paulley, Director, Engineering</dc:creator><category>Operating systems</category><category>Hardware</category><guid>http://iablog.sybase.com/paulley/?p=2630</guid><description>I don&apos;t usually &quot;re-tweet&quot; someone else&apos;s blog post. There are enough bits of &lt;del datetime=&quot;2012-02-29T18:39:00+00:00&quot;&gt;information&lt;/del&gt;...</description><content:encoded>I don&apos;t usually &quot;re-tweet&quot; someone else&apos;s blog post. There are enough bits of &lt;del datetime=&quot;2012-02-29T18:39:00+00:00&quot;&gt;information&lt;/del&gt; data flying through the Internet that I don&apos;t need to duplicate any more of them. At least, no more than absolutely necessary. &lt;p&gt;&lt;p&gt;However, today I am going to make an exception and draw your attention to a recent post by Amazon Web Services VP &lt;a href=&quot;http://mvdirona.com/jrh/work/&quot;&gt;James Hamilton&lt;/a&gt; entitled &quot;&lt;a href=&quot;http://perspectives.mvdirona.com/2012/02/26/ObservationsOnErrorsCorrectionsTrustOfDependentSystems.aspx&quot;&gt;Observations on Errors, Corrections, &amp; Trust of Dependent Systems&lt;/a&gt;&quot;. I have known James for the better part of twenty years and his writing on infrastructure efficiency, reliability, and scaling makes for compelling reading. If you&apos;re not reading James&apos; blog, &lt;a href=&quot;http://perspectives.mvdirona.com/&quot;&gt;Perspectives&lt;/a&gt;, on a regular basis, you should be. In part, here&apos;s what James had to say about the need for ECC memory in both client and server systems:&lt;p&gt;&lt;p&gt;&lt;blockquote&gt;&lt;p&gt;The immediate lesson is you absolutely do need ECC in server application[sic] and it is just about crazy to even contemplate running valuable applications without it. The extension of that learning is to ask what is really different about clients? Servers mostly have ECC but most clients don’t. On a client, each of these corrections would instead be a corruption. Client DRAM is not better and, in fact, often is worse on some dimensions. These data corruptions are happening out there on client systems every day. Each day client data is silently corrupted. Each day applications crash without obvious explanation. At scale, the additional cost of ECC asymptotically approaches the cost of the additional memory to store the ECC. I’ve argued for years that Microsoft should require ECC for Windows Hardware Certification on all systems including clients. It would be good for the ecosystem and remove a substantial source of customer frustration. In fact, it’s that observation that leads most embedded systems parts to support ECC. Nobody wants their car, camera, or TV crashing. Given the cost at scale is low, ECC memory should be part of all client systems. &lt;p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;p&gt;James&apos; post is timely because this week I was asked by SQL Anywhere Product Manager &lt;a href=&quot;http://iablog.sybase.com/efarrar&quot;&gt;Eric Farrar&lt;/a&gt; to respond to a request from an OEM hardware infrastructure manufacturer for feedback regarding future product designs.&lt;p&gt;&lt;p&gt;Other than the obvious &quot;cheaper and faster&quot; my wish is for one thing: robustness. &lt;p&gt;&lt;p&gt;As James describes in his post, at scale, &quot;hardware&quot; failures are rife, causing errors, logical and physical data corruptions, system outages, crashes, you name it. I placed &quot;hardware&quot; in quotation marks deliberately because today&apos;s disk and flash memory hardware contains a vast quantity of software as well; the microcode for the filesystem on compact flash (CF) and SD is OEM&apos;d and consists of thousands of lines of code. ECC correction would be nice, not only for flash or traditional magnetic media but also for RAM, as James notes. Yet even with ECC correction, things aren&apos;t that rosy, particularly with &quot;commodity&quot; hardware. Consider the abstract of this IEEE paper [1] from &lt;a href=&quot;http://pages.cs.wisc.edu/~remzi/&quot;&gt;Remzi Arpaci-Dusseau&lt;/a&gt;&apos;s storage group at the University of Wisconsin:&lt;p&gt;&lt;p&gt;&lt;blockquote&gt;&lt;p&gt;We use type-aware pointer corruption to examines Windows NTFS and Linux ext3. We find that they rely on type and sanity checks to detect corruption, and NTFS recovers using replication in some instances. However, NTFS and ext3 do not recover from most corruptions, including many scenarios for which they possess sufficient redundant information, leading to further corruption, crashes, and unmountable file systems. We use our study to identify important lessons for handling corrupt pointers. &lt;p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;p&gt;I have written about storage stack corruption at various times in the past - see &lt;a href=&quot;http://iablog.sybase.com/paulley/2009/10/disk-failures-in-the-real-world/&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://iablog.sybase.com/paulley/2008/05/its-11-oclock-do-you-know-where-your-data-is/&quot;&gt;here&lt;/a&gt;. That corruption need not be permanent to cause problems: logical (data) corruption caused by transient failures can be just as bad as permanent ones. James&apos; point is that corruption detection and mitigation needs to take place in all system components, including RAM.&lt;p&gt;&lt;p&gt;All of this is bad enough. Yet the situation isn&apos;t helped by the lack of standards in this area. We know from the experience of our customers that various systems fail to meet expected behaviour with respect to I/O semantics - these behaviours are, sometimes, deliberately changed in the name of better performance, but at the expense of robustness. SQL Anywhere customers are well advised to read this &lt;a href=&quot;http://www.sybase.com/detail?id=1092313&quot;&gt;whitepaper&lt;/a&gt; entitled &quot;SQL Anywhere I/O Requirements for Windows and Linux&quot; for background information on what I/O semantics your server systems must support. &lt;p&gt;&lt;p&gt;[1] Lakshmi N. Bairavasundaram, Meenali Rungta, Nitin Agrawal, Andrea C. Arpaci-Dusseau, Remzi H. Arpaci-Dusseau, and Michael M. Swift (June 2008). Analyzing the Effects of Disk Pointer Corruption. In Proceedings of the International Conference on Dependable Systems and Networks, Anchorage, Alaska, pp. 502-511. &lt;p&gt;&lt;p&gt;</content:encoded><wfw:commentRss>http://iablog.sybase.com/paulley/?p=2630/feed/</wfw:commentRss></item>
	
</channel>
</rss>
