Unordered row processing

When you design a DataBlade® module, you cannot control how queries are executed. There is no guarantee that the routines in a query are called in any particular order. DataBlade® module routines are called during query processing to compute answers to queries. Do not hardcode query execution strategies. For example, an attempt to force an index scan or a sequential table scan reduces the number of choices available to the query optimizer and results in poor performance.

To ensure that your DataBlade® module does not conflict with the query processing engine, ask the following questions:
  • Do any routines require values to be delivered in some particular order? If so, the routines break a fundamental rule of relational database systems and must be changed.
  • Is it important for routines in a query to execute in some particular sequence? Again, the routines must be changed.