Netezza Release Notes

50
Netezza Corporation Corporate Headquarters 26 Forest St., Marlborough, Massachusetts 01752 tel 508.382.8200 fax 508.382.8300 www.netezza.com Netezza Release Notes Document Number: 20283-18 Rev. 1 Software Release: 6.0.x Revised: October 14, 2010

Transcript of Netezza Release Notes

Page 1: Netezza Release Notes

Netezza Release Notes Document Number: 20283-18 Rev. 1Software Release: 6.0.xRevised: October 14, 2010

Netezza Corporation

Corporate Headquarters26 Forest St., Marlborough, Massachusetts 01752tel 508.382.8200 fax 508.382.8300 www.netezza.com

Page 2: Netezza Release Notes

The specifications and information regarding the products described in this manual are subject to change without notice. All statements, information, and recommendations in this manual are believed to be accurate.

Netezza makes no representations or warranties of any kind, express or implied, including, without limitation, those of merchantability, fitness for a partic-ular purpose, and non infringement, regarding this manual or the products' use or performance. In no event will Netezza be liable for indirect, incidental, consequential, special, or economic damages (including lost business profits, business interruption, loss or damage of data, and the like) arising out of the use or inability to use this manual or the products, regardless of the form of action, whether in contract, tort (including negligence), breach of warranty, or otherwise, even if Netezza has been advised of the possibility of such damages.

Netezza, the Netezza logo, the circle-N logo, TwinFin, Skimmer, Snippet Blades, S-Blades, NPS, Snippet, Snippet Processing Unit, SPU, Snippet Process-ing Array, SPA, Performance Server, Netezza Performance Server, Asymmetric Massively Parallel Processing, AMPP, Intelligent Query Streaming and other marks are trademarks or registered trademarks of Netezza Corporation in the United States and/or other countries. All rights reserved.

Red Hat is a trademark or registered trademark of Red Hat, Inc. in the United States and/or other countries.

Linux is a trademark or registered trademark of Linus Torvalds in the United States and/or other countries.

D-CC, D-C++, Diab+, FastJ, pSOS+, SingleStep, Tornado, VxWorks, Wind River, and the Wind River logo are trademarks, registered trademarks, or service marks of Wind River Systems, Inc. Tornado patent pending.

APC and the APC logo are trademarks or registered trademarks of American Power Conversion Corporation.

All document files and software of the above named third-party suppliers are provided "as is" and may contain deficiencies. Netezza and its suppliers dis-claim all warranties of any kind, express or implied, including, without limitation, those of merchantability, fitness for a particular purpose, and non infringement.

In no event will Netezza or its suppliers be liable for indirect, incidental, consequential, special, or economic damages (including lost business profits, busi-ness interruption, loss or damage of data, and the like), or the use or inability to use the above-named third-party products, even if Netezza or its suppliers have been advised of the possibility of such damages.

All other trademarks mentioned in this document are the property of their respective owners.

Document Number: 20283-18

Software Release Number: 6.0.x

Netezza Release Notes

Copyright © 2001-2010 Netezza Corporation.

All rights reserved.

PostgreSQL

Portions of this publication were derived from PostgreSQL documentation. For those portions of the documentation that were derived originally from Postgr-eSQL documentation, and only for those portions, the following applies:

PostgreSQL is copyright © 1996-2001 by the PostgreSQL global development group and is distributed under the terms of the license of the University of California below.

Postgres95 is copyright © 1994-5 by the Regents of the University of California.

Permission to use, copy, modify, and distribute this documentation for any purpose, without fee, and without a written agreement is hereby granted, pro-vided that the above copyright notice and this paragraph and the following two paragraphs appear in all copies.

In no event shall the University of California be liable to any party for direct, indirect, special, incidental, or consequential damages, including lost profits, arising out of the use of this documentation, even if the University of California has been advised of the possibility of such damage.

The University of California specifically disclaims any warranties, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. The documentation provided hereunder is on an "as-is" basis, and the University of California has no obligations to provide maintenance, support, updates, enhancements, or modifications.

ICU Library

The Netezza implementation of the ICU library is an adaptation of an open source library Copyright (c) 1995-2003 International Business Machines Corpo-ration and others.

ICU License - ICU 1.8.1 and laterCOPYRIGHT AND PERMISSION NOTICE

Copyright (c) 1995-2003 International Business Machines Corporation and othersAll rights reserved.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, provided that the above copyright notice(s) and this permission notice appear in all cop-ies of the Software and that both the above copyright notice(s) and this permission notice appear in supporting documentation.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRAN-TIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAM-AGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

Except as contained in this notice, the name of a copyright holder shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization of the copyright holder.

ODBC Driver

The Netezza implementation of the ODBC driver is an adaptation of an open source driver, Copyright © 2000, 2001, Great Bridge LLC. The source code for this driver and the object code of any Netezza software that links with it are available upon request to [email protected]

Page 3: Netezza Release Notes

Botan License

Copyright (C) 1999-2008 Jack Lloyd

2001 Peter J Jones2004-2007 Justin Karneges2005 Matthew Gregan2005-2006 Matt Johnston2006 Luca Piccarreta2007 Yves Jerschow2007-2008 FlexSecure GmbH2007-2008 Technische Universitat Darmstadt2007-2008 Falko Strenzke2007-2008 Martin Doering2007 Manuel Hartl2007 Christoph Ludwig2007 Patrick Sona

All rights reserved.

Redistribution and use in source and binary forms, for any use, with or without modification, of Botan (http://botan.randombit.net/license.html) is permitted provided that the following conditions are met:

1. Redistributions of source code must retain the above copyright notice, this list of conditions, and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions, and the following disclaimer in the documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, ARE DISCLAIMED.

IN NO EVENT SHALL THE AUTHOR(S) OR CONTRIBUTOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CON-SEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBIL-ITYOF SUCH DAMAGE.

Regulatory Notices

Install the NPS system in a restricted-access location. Ensure that only those trained to operate or service the equipment have physical access to it. Install each AC power outlet near the NPS rack that plugs into it, and keep it freely accessible.

Provide approved 30A circuit breakers on all power sources.

Product may be powered by redundant power sources. Disconnect ALL power sources before servicing.

High leakage current. Earth connection essential before connecting supply. Courant de fuite élevé. Raccordement à la terre indispensable avant le raccor-dement au réseau.

FCC - Industry Canada Statement

This equipment has been tested and found to comply with the limits for a Class A digital device, pursuant to part 15 of the FCC rules. These limits are designed to provide reasonable protection against harmful interference when the equipment is operated in a commercial environment. This equipment gen-erates, uses, and can radiate radio-frequency energy and, if not installed and used in accordance with the instruction manual, may cause harmful interference to radio communications. Operation of this equipment in a residential area is likely to cause harmful interference, in which case users will be required to correct the interference at their own expense.

This Class A digital apparatus meets all requirements of the Canadian Interference-Causing Equipment Regulations.

Cet appareil numérique de la classe A respecte toutes les exigences du Règlement sur le matériel brouilleur du Canada.

WEEE

Netezza Corporation is committed to meeting the requirements of the European Union (EU) Waste Electrical and Electronic Equipment (WEEE) Directive. This Directive requires producers of electrical and electronic equipment to finance the takeback, for reuse or recycling, of their products placed on the EU market after August 13, 2005.

CE Statement (Europe)

This product complies with the European Low Voltage Directive 73/23/EEC and EMC Directive 89/336/EEC as amended by European Directive 93/68/EEC.

Warning: This is a class A product. In a domestic environment this product may cause radio interference in which case the user may be required to take adequate measures.

VCCI Statement

この装置は、 情報処埋装置等電波障害自主規制協議会   (VCCI) の基準に基づ く ク ラ ス A 情報技術装置です。 この装置を家庭環境で使用する と電波妨害を引き起越す こ と があ り ます。 こ の場合には使用者が適切な対策を講ずる う 要求される こ と があ り ます。

Page 4: Netezza Release Notes
Page 5: Netezza Release Notes

Contents

1 Netezza Release 6.0.xNew in This Release . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1

Supported Upgrade Paths. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1

Compress Engine Enhancements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2

Clustered Base Tables (CBT). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-3

Altering Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-4

Netezza SQL Language Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-5

Multi-Destination Filesystem Backups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-6

Workload Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-7

NzPortal Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-8

Enhanced User Authentication and Password Management . . . . . . . . . . . . . . . . . 1-9

User-Defined Functions Improvements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-9

Stored Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-10

Caveats for Release 6.0.x . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-10

Changes in This Release . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-11

Event Manager Changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-11

System Manager Changes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-11

System Configuration and Settings Changes . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-11

Administration Interface Changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-12

Command and CLI Changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-12

ODBC, JDBC, OLE-DB Changes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-13

Database and SQL Language Changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-13

Documentation Changes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-14

New and Modified System Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-14

Known Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-19

Customer Bugs Fixed in This Release . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-28

v

Page 6: Netezza Release Notes

vi

Page 7: Netezza Release Notes

List of Tables

Table 1-1: Modified System Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-16

Table 1-2: Known Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-19

Table 1-3: Customer-Reported Bugs Fixed in Release 6.0 . . . . . . . . . . . . . . . . 1-28

vii

Page 8: Netezza Release Notes

viii

Page 9: Netezza Release Notes

C H A P T E R 1

Netezza Release 6.0.x

What’s in this chapterNew in This Release

Changes in This Release

Known Issues

Customer Bugs Fixed in This Release

This document provides special information about Netezza Release 6.0.x, including a summary of new features and changes, known issues, and customer bugs fixed in the release. Review this document prior to installing or upgrading to Release 6.0.x.

The term 6.0.x refers to Netezza Release 6.0 or any of the service packs for that release. If information relates to a specific release, the guide uses the full release number.

New in This Release

Netezza Release 6.0.x is a new release of software designed to run on the Netezza Twin-Fin® and Skimmer® families of data warehouse and analytic appliances.

Supported Upgrade Paths Release 6.0.x supports the TwinFin and Skimmer model families; it cannot be installed on or used to upgrade any 4.x or earlier Netezza releases on z-series Netezza hardware models.

You can upgrade from Release 5.0.x to Release 6.0.x, and you can downgrade from Release 6.0.x to the prior 5.0.x release. Your system must be running a minimum of Netezza Release 5.0.8 (P-4), FDT Release 1.5, and HPF Release 4.4.4 before you can upgrade to 6.0. For a description of the upgrade and downgrade steps, see the Netezza Software Upgrade Guide for Release 6.0.x.

If your system is running Release 6.0 beta software, do not upgrade to the Release 6.0.x generally available software or downgrade to a prior Netezza release. If your system is run-ning or has ever run 6.0 beta software, contact Support to reinitialize your system with the desired Netezza release. The reinitialization erases all data from the system, so you must reload your data from a source other than a 6.0 beta release backup.

Note: Within the user documentation, the term z-series identifies Netezza appliances that use the Rev7-series SPU. The z-series systems include 10000-series models, 5200-series models, as well as some 8000z series models and the development SPUBox.

Release 5.0.x requires Red Hat Enterprise Linux (RHEL) 5.3.

1-1

Page 10: Netezza Release Notes

Netezza Release Notes

Do not update, patch, or otherwise alter the Linux kernel or other Linux binaries on your system unless Netezza directs you to do so. Netezza does not support unauthorized updates or custom modifications of the kernel.

When you upgrade to Release 6.0.x from a prior 5.0.x release, note there additional upgrade details:

The new Compress Engine II (CTA2) compression format is not enabled by default on upgrades; you must enable it to take advantage of the new compression features. Netezza strongly recommends that you do not enable CTA2 until after you have tested with the new 6.0.x software and are certain that your queries and other Netezza activi-ties are operating as you expect.

If you downgrade the Netezza software from 6.0.x to your previous 5.0.x release, note that your user data will require conversions to restore the format used on the 5.0.x release.

The /nz partition on the Netezza system must have sufficient free disk space to com-plete the upgrade. The upgrade process verifies that there is free disk space equal to 3 times the size of the /nz/data partition; if the free disk space is less than that amount, the upgrade process exits with an error. Contact Netezza Support for assistance if you need assistance with cleaning up disk space.

For details on the upgrade and downgrade, see the Netezza Software Upgrade Guide.

Compress Engine EnhancementsWith Release 6.0.x, Netezza introduces additional support for the compression of user data within the system. The Compress Engine feature is a method for compressing columnar data in a table.

Compressed tables offer several benefits:

Improved query performance as it takes less time to read and scan the more compact, compressed tables.

Increased data storage for the Netezza system because compressed tables consume less disk space. Compressed tables are often much smaller that the uncompressed ver-sion of the table, but the actual compression savings depends on the table.

In Release 6.0.x, the new Compress Engine format (also called CTA2) adds support for string compression. For new Release 6.0.x systems, Compress Engine/CTA2 support is enabled by default. However, if you upgrade to 6.0.x from a 5.0.x release, which uses the original Compress Engine (CTA1) support, CTA2 compression is disabled by default. You must enable CTA2 compression using the instructions in the Netezza Software Upgrade Guide to take advantage of the CTA2 compression.

After you enable CTA2 compression, any new tables that you create will use CTA2 compres-sion. Any new rows that you insert to a table will also be saved in CTA2 compressed blocks. Existing data on your system remains in the CTA1 format until you do one of the following:

Use the GROOM TABLE SQL command to convert the table to CTA2 compressed format.

Use an operation such as CREATE TABLE AS to create a new table from an existing CTA1 table.

1-2 20283-18 Rev.1

Page 11: Netezza Release Notes

New in This Release

Reload or restore Netezza user data (which applies CTA2 compression to all the data during the reload/restoration).

After CTA2 is enabled, the process to downgrade the Netezza system to the 5.0.x release that you upgraded from becomes more complex; it requires procedures to locate the CTA2 table blocks and to convert those blocks back to CTA1 format. Therefore, Netezza strongly recommends that you do not enable CTA2 compression until after you have tested with the new 6.0.x software and are certain that your queries and other Netezza activities are oper-ating as you expect. For more information about downgrade steps and issues, see the Netezza Software Upgrade Guide.

Clustered Base Tables (CBT)Release 6.0.x introduces a major new feature called clustered base tables (CBTs). A CBT is a user table that contains data which is organized using one to four organizing keys. An organizing key is a column of the table that you specify for sorting the table records; Netezza uses the organizing keys to group records within the table and save them in the same or nearby extents. Netezza also creates zone maps for the organizing columns to accelerate the performance of queries on that table that restrict using the organizing keys.

CBTs are exactly like user tables, except that they allow you to specify how to organize the records of the table to improve query performance. You can load data to the CBT without any prior sorting or organization steps, then you use the SQL GROOM TABLE command to organize the records transparently in the background; the user table remains unlocked dur-ing the grooming so that user queries as well as inserts, updates, and deletes can continue on the table that is being reorganized. Queries that restrict on the organizing columns typi-cally run much faster because they can leverage the zone maps to avoid unnecessary disk scans for the relevant records.

CBTs offer several benefits:

CBTs improve query performance by making more efficient use of zone maps for a table because the organizing key columns are also zone mapped (if the organizing column data type supports zone maps). By organizing the data in the table so that commonly filtered data is located in the same or nearby disk extents, your queries can take advan-tage of the zone maps' ability to eliminate unnecessary disk scans to find the relevant records.

CBTs increase the supported data types for zone-mapped columns, thus allowing you to improve performance for queries that restrict along multiple dimensions.

CBTs allow you to incrementally organize data within your user tables in situations where data cannot easily be accumulated in staging areas for pre-ordering before inser-tions/loads. CBTs can help you to eliminate or reduce pre-sorting of new table records prior to a load/insert operation.

CBTs save disk space. Unlike indexes, materialized views and other auxiliary data structures, CBTs do not replicate the base table data and do not allocate additional data structures.

CBTs are most often used for large fact or event tables which could have millions or billions of rows.

20283-18 Rev.1 1-3

Page 12: Netezza Release Notes

Netezza Release Notes

As a result of CBTs and new architecture changes for storage, the reclaim process has changed in this release. Release 6.0.x introduces a new GROOM TABLE command in the SQL language. The GROOM TABLE command performs non-locking reclaims and also reor-ganizes CBTs to improve the scan performance. The groom process can run in the background while inserts, updates, and other changes are taking place on the user tables that are being groomed. The nzreclaim command now calls the GROOM TABLE command; in 6.0.x, the nzreclaim command operates on all the supported clients except Windows because nzsql is not yet supported on Windows. Going forward, you should migrate any scripts that you use which call nzreclaim to use the new GROOM command. For more infor-mation about reclaims, groom, and CBTs, refer to the Netezza System Administrator’s Guide.

Altering TablesRelease 6.0.x adds the ability to alter a table by adding or dropping a column. The ALTER TABLE command now includes ADD COLUMN and DROP COLUMN syntax to support these tasks.

When you alter a table, the Netezza system creates a table schema version that records the changes made to the table; thus, tables now have versions that track the changes made to them. The table is represented internally as a view operating on a union of all the table ver-sions. Queries against the table are now queries against the view.

As a best practice, Netezza recommends that you resolve these table versions to the one, latest definition using the GROOM TABLE VERSIONS command. The GROOM TABLE VER-SIONS command migrates the data in the background to the latest table version’s schema using the least additional disk space as possible. While the data is being migrated, queries can continue to run on that table but the system blocks data manipulation language (DML) commands such as update, insert, delete, and truncate for that table.

The query performance against a versioned table degrades with each additional version. Also, if you alter a very large table without grooming it, you could encounter situations where queries against the versioned table could fail due to insufficient swap space. For these reasons, it is highly recommended that you use the GROOM TABLE command as soon as possible following the ALTER TABLE command. Also, you cannot downgrade from 6.0.x if you have tables with multiple versions; you must groom the table to resolve the ver-sions first, then the downgrade process will allow you to proceed.

Note: When you alter a table to add or drop a column, the system places an exclusive access lock on the table until the alter command completes. If you capture that ALTER TABLE [ADD|DROP] COLUMN command in an incremental backup, and you later restore that increment, any concurrent sessions that query the table will block until the restore transaction commits.

When you add a column to a table, you can specify a default value so that queries against the existing rows of the table will use the default as the column’s value. When you drop a column, note that you can impact views against the column. You cannot drop certain col-umns, such as those used as distribution columns or organizing key columns for the table. You cannot alter an external table or a temporary table. You also cannot add or drop a col-umn in a table that is referenced by a stored procedure. You must drop the stored procedure first, then you can add or drop columns, and then later recreate the procedure.

For more information about altering tables, see the Netezza Database User’s Guide.

1-4 20283-18 Rev.1

Page 13: Netezza Release Notes

New in This Release

If you alter the columns of a row-secure table that contains a NOT NULL column, note that you must use the GROOM TABLE VERSIONS command to resolve the table versions before you can backup that table using nzbackup or before you can create a compressed external table from that table. These commands display an error message if the row-secure table requires grooming first.

Netezza SQL Language FeaturesRelease 6.0.x adds support for the following new features and capabilities for the Netezza SQL language.

Analytic FunctionsIn Release 6.0.x, Netezza adds support for additional online analytical processing (OLAP) histogram, ranking, and inverse distribution functions that are commonly used in business queries. These functions include:

Ntile

Percent_rank

Cume_dist

Rank

Dense_rank

Percentile_cont

Percentile_disc

Width_bucket

This release also adds support for aggregate filters against user tables and views. For more information about these new analytic functions and filters, see the Netezza Database User’s Guide.

Comma as Decimal SeparatorMany countries and locales use the comma to separate the whole number portion of their numeric data from the decimal portion of the data. In Release 6.0.x, Netezza adds support for specifying the comma character as a decimal delimiter within the data types that sup-port decimal notation, such as floats and numerics. Netezza supported the period character as a decimal separator, but with this change, users can specify that a comma is used as the delimiter during such operations as INSERTS, CREATE TABLE AS, and nzload operations. For more information about loading and unloading data using this decimal format, see the Netezza Data Loading Guide.

WITH Clause Support Release 6.0.x adds support for the WITH clause in the Netezza SQL language. The WITH clause is part of the SQL:99 standard; note that Netezza does not support recursive que-ries, so if you specify the keywords recursive, search, or cycle, the system returns an error. Also, this syntax addition does not extend support for correlated subqueries; if you use the WITH clause within correlated subqueries of the type that Netezza does not support, the query returns an error.

20283-18 Rev.1 1-5

Page 14: Netezza Release Notes

Netezza Release Notes

Cube, Rollup, and Grouping Sets SupportRelease 6.0.x adds support to the GROUP BY clause for the SQL:99 OLAP extensions: ROLLUP, CUBE, and GROUPING SETS. These GROUP BY extensions support aggregating SELECTs whose result sets provide aggregations using various groupings, as though multi-ple GROUP BY clauses were applied to the SELECT. This support is available only for user tables.

Integer Overflow DetectionRelease 6.0.x introduces support for improved detection and reporting of integer overflow cases during the following specific operations on our 4 integer datatypes (int1, int2, int4, and int8):

Unary minus

Addition

Subtraction

Multiplication

Division

ABS (absolute value function)

If Netezza evaluations detect integer overflow, they exit and report an error. For example:

mydb(user)=> SELECT 2147483647::int4+1::int4;ERROR: overflow in 32 bit arithmetic

Multi-Destination Filesystem BackupsRelease 6.0.x now allows you to specify up to 16 filesystem locations when you back up your Netezza databases using the filesystem connector. Multiple locations increase the storage capacity for your backups, which helps to avoid problems where a backup might fail because a single filesystem location was not large enough to hold the backup.

Multi-stream support in Release 6.0 can help you to improve backup performance by reducing the time required to transfer the data to the destination. If you specify multiple filesystem locations, or if you use third-party backup tools that support multiple connec-tions, the backup process can “parallelize” the work to send the data to the backup destinations. To use multi-stream backups, you use the -streams num option of the nzbackup command.

With multiple filesystem locations, you can reduce the overall time required to complete a backup because multiple streams work in parallel to write portions of the database to each location. The performance of the backup depends upon the speed of the network connec-tions to each filesystem location as well as the write speed of the disks that support that location. For more information about multi-destination backups, see the Netezza System Administrator’s Guide.

Note: You cannot specify a location in the Netezza shared partition (/nz) for a multi-desti-nation filesystem backup. In previous releases, and still in some cases, it is possible to save backups on the shared partition; however, do not save backups to the shared partition. In a future release, backups to the shared partition will not be allowed.

1-6 20283-18 Rev.1

Page 15: Netezza Release Notes

New in This Release

Workload ManagementRelease 6.0 introduces several changes and new features to improve the workload manage-ment of your Netezza systems:

GRA Ceilings

Load under GRA Control

Capacity Planning

Improved GRA Allocation Algorithms

The following sections describe these changes. In addition, the NzPortal interface is a new interface that provides insight to the operation and workload of the system. The NzPortal interface is available in a “beta” version for Release 6.0.x. For more information, see “NzPortal Interface” on page 1-8.

GRA CeilingsWith Release 6.0.x, the guaranteed resource allocation (GRA) feature offers improvements for the allocation of system resources to your users. In previous releases, you could specify a GRA resource percentage that specified the minimum percentage of resources that a group should receive when the system was very busy running requests and jobs from several resource groups. However, when only one or a few resource groups were active, these groups could receive a much larger percentage of the system resources because the system would apply all its resources to the active jobs, even if there was only one or very few jobs.

With Release 6.0.x, you can now specify a maximum ceiling for GRA resource allocations as well as a minimum. The ceiling limits the amount of resources that a group can receive to a maximum percentage, even if the group is the only group using the system. Ceilings can help you to partition the Netezza system resources so that multiple groups can be assigned portions of a Netezza system; this can help you to set and enforce service levels for your groups. The maximum resource allocations can also help to establish more consis-tent query performance ranges and experience for your users.

Note that the behaviors for the Public group (the default group in which all users belong), and the admin user are now more tightly integrated with the new WLM behaviors. You can now set minimum and maximum resource percentages for the Public group, which by default are 20 and 100 respectively. The admin user will continue to receive at least half of the system resources for its jobs, even when other jobs are running. If no other jobs are run-ning, the admin user can use all the system resources.

In addition to the resource minimum and maximum allocations, you can also limit the number of concurrent jobs for a group to prevent a group from sending too many concurrent jobs to the system. The JOB MAXIMUM attribute of the [CREATE|ALTER| GROUP com-mands specify how many concurrent jobs can be running on the system from the members of one group. Any jobs in excess of this limit will queue until active jobs complete and new ones can begin.

Load under GRA ControlNetezza now applies a more fair distribution of resources between load operations and user queries. This change helps to improve query performance during loads, but can increase load times as a result. There is a configuration registry setting, host.schedGRALoadEn-abled, that controls the feature. You can set the value to no to restore the bias for load operations. Consult with Netezza Support before changing the setting.

20283-18 Rev.1 1-7

Page 16: Netezza Release Notes

Netezza Release Notes

Capacity Planning Release 6.0 offers new views into the performance and statistics of the WLM processing. For example:

_V_SYSTEM_UTIL shows 24-hours’ of 60-second samples of the work from an operat-ing system level view, including host CPU utilization, the average SPU CPU utilization, and the maximum SPU CPU utilization for the system.

_V_PLAN_RESOURCE shows resource detail, durations, and estimates for the plans created for the jobs submitted on the system.

_V_SCHED_GRA_EXT, _V_SCHED_GRA_EXT_LATEST, _V_SCHED_SN_EXT and _V_SCHED_SN_EXT_LATEST show the resource details and the average number of plans, computed for each resource sharing group.

Improved GRA Allocation AlgorithmsRelease 6.0 introduces new algorithms that control how the Netezza systems allocates resources for GRA resource utilization of the active groups. As groups become active and submit work, these GRA controls help to ensure that groups receive the correct percentage of system resources and that their active jobs receive appropriate resources based on each job’s priority settings. In previous releases, priority settings and the number of active jobs in each priority could result in resource allocations where one low priority job could receive more system resources than a high-priority job, if there were numerous high-priority jobs running at the same time from that group. In Release 6.0.x and later, a higher priority job from the same resource group will always receive more resources than a lower priority job in that group. The percentage of resources depends upon the number of each type of job sub-mitted from the group, and the overall GRA allocation for the resource group.

This release has also improved the GRA controls to monitor and re-balance the allocated resources for each group to keep the resource sharing groups operating within a closer range of their assigned GRA allocations. This helps to better regulate the overall query and work performance for the active jobs on the system.

NzPortal InterfaceRelease 6.0.x introduces the NzPortal management interface, which is a new web-based administrative client for monitoring Netezza systems. Users can access the NzPortal inter-face using standard Web browsers. NzPortal can monitor one or more Netezza systems which are running Release 4.6.x or later; these systems can be Netezza 10000-series sys-tems as well as TwinFin/skimmer model family systems.

Note: The NzPortal interface is currently available as a “beta” evaluation version.

You can use the NzPortal reports to obtain details about workload and query performance, encumbrances (that is, activities such as loads, queries, and other jobs which might be impacting query performance), and status. You can also compare the runtimes for similar queries to observe the performance of queries over time. You can drill-down into SQL que-ries to obtain the SQL commands and other details, and you can create custom monitors (that is, custom queries) to obtain other performance indicators over time.

You can install the NzPortal interface on Linux Red Hat 5.3 systems such as a Netezza host system or equivalent Linux server. For more information about the NzPortal interface and installation, see the Netezza System Administrator’s Guide.

1-8 20283-18 Rev.1

Page 17: Netezza Release Notes

New in This Release

Enhanced User Authentication and Password Management Release 6.0.x introduces enhanced support for user authentication options and password management controls. The Netezza system uses pam_cracklib utilities to enforce database user account passwords, which provides a very strong set of rules to help users avoid weaker or more easily guessed passwords. For more information about password manage-ment and storing passwords, see the Netezza System Administrator’s Guide.

If you choose LDAP authentication, you can create users who are locally authenticated as exceptions to the system-wide setting. The Netezza host supports LDAP authentica-tion for database user logins only, not for operating system logins on the host.

You can configure system-wide policies for the minimum requirements for a database user’s password’s length and character content, as well as for the duration of time until passwords expire. These system-wide controls do not apply to the default admin data-base user, only to the other database user accounts that you create.

In Release 6.0.x, note that the encryption used for locally encrypted passwords has changed. In prior releases, Netezza used the Blowfish encryption routines; Release 6.0 now uses the Advanced Encryption Standard AES-256 standard. When you cache a password using a release 6.0 client, the password is saved in AES-256 format unless there is an existing password file in Blowfish format. In that case, new stored passwords will be saved in Blowfish format.

If you upgrade to a Release 6.0.x client, the client can support passwords in either the Blowfish format or the AES-256 format. If you want to convert your existing password file to the AES-256 encryption format, you can use the nzpassword resetkey command to update the file. If you want to convert your password file from the AES-256 format to the Blowfish format, use the nzpassword resetkey -none command.

Older clients, such as those for Release 5.0.x and those earlier than Release 4.6.6, do not support AES-256 format passwords. If your password file is in AES-256 format, the older client commands will prompt for a password, which can cause automated scripts to hang. Also, if you use an older client to add a cached password to or delete a cached password from an AES-256 format file, you could corrupt the AES-256 password file and lose the cached passwords. If you typically run multiple releases of Netezza clients, you should use the Blowfish format for your cached passwords.

User-Defined Functions ImprovementsRelease 6.0.x introduces several enhancements and new features for user-defined analytics in the Netezza SQL language.

A user-defined table function (UDTF) is a function that can be invoked in a FROM clause in a SQL statement and returns a table shape with columns having names and types. It can return zero or more rows. It can be invoked with arguments, including lit-erals and non-literal expressions containing columns from other tables. Table functions can appear in a SQL query in those locations where a table would normally appear.

User-defined objects now support variable input argument using the VARARGS key-word; that is, you can invoke an object with any number of arguments, but you need only register the object once.

20283-18 Rev.1 1-9

Page 18: Netezza Release Notes

Netezza Release Notes

User-defined objects now support fenced and unfenced execution on the host and S-Blades as a way to isolate the user code execution to a protected address space during development. Fencing provides a safer testing and deployment environment, but it can degrade performance of the queries that use fenced UDXs. Users can be granted Unfence permission to create and/or alter a UDF or UDA that runs in Unfenced execu-tion, which generally performs better than fenced execution mode.

Note: In Release 6.0, the default system setting is to run UDXs in Fenced mode. If you have UDXs registered on your system and you upgrade to 6.0, those UDXs will continue to run in Unfenced mode. However, when you register new UDFs or UDAs on a Release 6.0.x system, those UDXs will run in Fenced mode by default, unless you register them to use Unfenced mode.

For details about these features, refer to the Netezza User-Defined Functions Developer’s Guide. (Note that this guide was previously titled the Netezza OnStream Functions Devel-oper’s Guide. The title has changed starting in Release 6.0.x.)

Stored ProceduresRelease 6.0.x introduces several enhancements for stored procedures and the NZPLSQL language:

You can now define stored procedures with a variable number of input arguments (from 0 to 64) of any supported data type using the VARARGS keyword in the argument list.

There is a new built-in variable, PROC_ARGUMENT_TYPES, which is an array of the same size as the number of input arguments to the procedure. This array can be used to get the number and types of the arguments input to the procedure.

In previous releases, you could use $1, $2, and similar notation to obtain the argu-ments passed to the procedure. This release adds support for $var which takes the integer value of the variable var to obtain and process the input argument in that position.

You can now use built-in functions to obfuscate the body of a stored procedure when you create it. This prevents a user who has privileges to show the procedure to see the cleartext details of your stored procedure and its code.

For more information, see the Netezza Stored Procedures Developer’s Guide.

Caveats for Release 6.0.xNote the following features and capabilities which are not yet available for Release 6.0.x, as well as operational conditions of which you should be aware:

If you cache a password using the Release 6.0 nzpassword command, note that the command saves the password in AES-256 format by default, unless there is a password file already on the system with Blowfish encrypted passwords. See “Enhanced User Authentication and Password Management” on page 1-9 for the best practices to man-age locally cached passwords in mixed-client environments.

After you upgrade an NPS system to Release 6.0.x, you cannot extend an existing data-base backup with a new increment. You must perform a full restore of the database before you can perform an incremental restore. This typically only applies to environ-ments where B&R is being used to keep a Disaster Recovery NPS system up-to-date.

1-10 20283-18 Rev.1

Page 19: Netezza Release Notes

Changes in This Release

In Release 6.0, the replacespu command reports an error and exits if it detects an S-Blade sever model that is not yet supported. If you receive this error while replacing a failed S-Blade, contact Netezza Support for assistance with the hardware replacement.

Release 6.0 has discontinued support for restoring backups from early Netezza releases such as NPS Release 2.2 or earlier.

Changes in This Release

The following sections describe the changes in behavior for the release. Review these changes as they may require some planning time for the upgrade.

Event Manager ChangesRelease 6.0.x introduces several changes to event templates and rules. For example:

The reclaim-related events have been removed as they are no longer applicable to Release 6.0.x systems.

The SCSIPredictiveFailure event type now includes information about the field replace-able unit (FRU) details for the disk. After you upgrade to Release 6.0.x, if you have rules that enable the SCSIPredictiveFailure event type, you can recreate them to take advantage of the FRU information, or modify them to include the FRU details. For example:

nzevent modify -name SCSIPredictiveFailure -dst [email protected] -bodyText '$notifyMsg\n\nspuHwId: $spuHwId\ndisklocation:$location\nscsiAsc:$scsiAsc\nscsiAscq:$scsiAscq\nfru:$fru\ndevSerial:$devSerial\ndiskSerial:$diskSerial\ndiskModel:$diskModel\ndiskMfg:$diskMfg\neventsource:$eventSource\n'

If you downgrade to a release before 6.0.x, your SCSIPredictiveFailure event rule will not show any information for the FRU data. After a downgrade, you can delete and rec-reate the rule or modify it to drop the FRU field.

For more information about events, see the Netezza System Administrator’s Guide.

System Manager ChangesIn Release 6.0, the system manager checks the FPGA image version when an S-Blade ini-tializes, such as during an nzstart operation or an S-Blade reboot. If the FPGA image is not compatible with the version required by the NPS release, the system fails the S-Blade and rebalances the topology. If the system manager detects more than 3 failed S-Blades in one SPA of the system, the system transitions to the Down state. Contact Netezza Support for assistance with updating the FPGA image on the incompatible S-Blades to restore them to active status.

System Configuration and Settings ChangesThis release includes the following changes to system configuration settings:

The new host.sysUtilVtUpdateInterval setting specifies the number of seconds between updates of the _VT_SYSTEM_UTIL virtual table. The default is 60.

20283-18 Rev.1 1-11

Page 20: Netezza Release Notes

Netezza Release Notes

Several settings relating to reclaim have been deprecated in this release because they are not needed for the new GROOM TABLE feature. These settings include: host.autoRestartReclaim, host.reclaimPrependExtents, host.reclaimValidationTimeout, system.reclaimBubbleEventsLimit, system.reclaimExpansionHalt, and system.reclaimRecoveryEnable.

Administration Interface Changes This release includes the following changes to the NzAdmin and Web Admin interfaces:

NzAdmin and Web Admin have been updated for changes relating to the workload man-agement/guaranteed resource allocation settings for users and groups. For more information, see “Workload Management” on page 1-7.

There is a new NzPortal interface for monitoring Netezza systems. For more informa-tion, see “NzPortal Interface” on page 1-8.

Starting in Release 6.0.x, the Netezza UNIX client kits no longer include client soft-ware built for the HP PA-RISC platform.

Command and CLI Changes This release includes the following changes to command line utilities. For more informa-tion, see the CLI reference of the Netezza System Administrator’s Guide.

The nzstats show -type reclaim option has been removed in this release.

The nzreclaim command has changed in Release 6.0.x. It now calls the SQL GROOM TABLE command, and it displays information about the GROOM TABLE command that it is running. Note the following important operational changes of the nzreclaim client:

The nzreclaim -scanblocks and -scanrecords options have been removed in 6.0.x and are no longer supported. Any nzreclaim commands or scripts that include these options now return an error.

The nzreclaim command no longer defaults to using admin as the database user for the reclaim session. You must specify the database user account either using envi-ronment variables or the command syntax. The user account that you specify must have Groom privilege as well as access privilege to the database that contains the table(s) that you want to groom.

The nzreclaim command is not available for Windows clients at this time.

The nzreclaim command has been deprecated; you should transition to use the GROOM TABLE command.

The nzds command now uses the terms Healthy, Degraded, and Repairing for the sta-tus of a dataslice. Healthy indicates that the dataslice is mirrored and operating normally, Degraded indicates that the dataslice is unmirrored, and Repairing indicates that the dataslice is being regenerated to a spare disk to restore the mirroring status.

The nzinventory command has been removed from the Windows client installation kit, because it is no longer shipped in the 6.0.x CLI either.

The replacespu command now detects and reports an error for unsupported TwinFin models. If you receive that error when trying to replace an S-Blade, contact Netezza Support for assistance.

1-12 20283-18 Rev.1

Page 21: Netezza Release Notes

Changes in This Release

The nzhistcreatedb command now uses -p or -pw for the password option. The -pwd form has been deprecated.

Note: If users at your site use older revisions of clients, such as 5.0.x clients, those users should upgrade to the latest 6.0.x clients. Older clients may not support features such as versioned tables, multi-level row security, and other capabilities of the new release. For example, the nzsql command in pre-6.0.x clients does not show tables that have been ver-sioned using the ALTER TABLE [ADD|DROP] COLUMN syntax.

ODBC, JDBC, OLE-DB ChangesThis release includes the following changes to these client interfaces:

The JDBC driver now includes a property that can be appended to the JDBC connection URL. The DatabaseMetaData property can be set to true or false.

If DatabaseMetadata is not specified in the URL or if it is specified and set to true, the user can retrieve the DatabaseMetadata information as per the JDBC specifica-tions (that is, information is not restricted to the current catalog/schema).

If this property is set to false, the user retrieves information restricted only to the current catalog/schema.

Database and SQL Language ChangesThis release includes the following changes to the database and SQL language syntax and commands:

There is a new GROOM TABLE command that reclaims disk space for deleted or out-dated rows, and reorganizes tables based on the clustered base table organizing keys, or migrates data for tables that have multiple stored versions.

There are two new built-in functions to the SQL command language.

The quote_ident() function takes an input string expression which contains column and table identifiers in single quotes (‘column’) and returns the input value enclosed in double or single quotes respectively, with any embedded special char-acters properly escaped.

The quote_literal() function takes an input string which contains literal values and returns the input value enclosed in double or single quotes respectively, with any embedded special characters properly escaped.

These functions can be helpful when you are constructing dynamic SQL within a stored procedure body or similar cases. They can help you to correctly build the SQL state-ment strings. For more information about these functions, see the Netezza Stored Pro-cedures Developer’s Guide.

The ALTER TABLE command now allows users to ADD and DROP a column in the table.

The [CREATE | ALTER] TABLE commands now include organization key fields that allow you to specify up to four keys on which to cluster the records in the database.

The Reclaim administration privilege has been deprecated and replaced by the Groom object privilege for tables. When you upgrade to Release 6.0.x, note that any users who were granted the Reclaim privilege will be updated to have Groom privilege on the Table class.

20283-18 Rev.1 1-13

Page 22: Netezza Release Notes

Netezza Release Notes

The [CREATE| ALTER] GROUP commands have new syntax relating to the GRA ceilings and workload management improvements in this release. The RESOURCELIMIT syntax has been deprecated; the new syntax is RESOURCE MINIMUM to specify the minimum percentage of system resources to allow a group when it and other groups have active queries. The RESOURCE MAXIMUM syntax allows you to specify a maximum percent-age of system resources to use, even when the system is otherwise idle. The JOB MAXIMUM syntax allows you to specify the number of jobs that can be active at one time for a group.

The Unfence administrative privilege has been added to allow users to create or alter a UDF or UDA to run in unfenced mode. (Fenced mode is the system default, which offers better protection for the system address space when developing UDFs and UDAs.)

New OLAP-related functions are now available, along with ROLLUP, CUBE, and GROUPING SETS extensions that support the WITH clause and GROUP BY extensions; for more information, see “Netezza SQL Language Features” on page 1-5.

The [CREATE | ALTER] USER commands now include options to expire user passwords and to use local authentication for an account when the system is configured to use LDAP authentication.

The SET SYSTEM DEFAULT command now includes options to set a global password expiration in days, as well as to set a global password policy for password security. The SHOW SYSTEM DEFAULT command now includes options to show the values of these settings.

Documentation ChangesNumerous guides in the Netezza 6.0.x documentation set have been revised with changes to support the new features in this release. In addition, this release includes the following changes to the Netezza documentation set:

The Netezza Data Loading Guide is now included in the 6.0.x documentation kit for the Netezza TwinFin, Skimmer, and later model families. Information for external tables as well as database loads has been moved from the Netezza Database User’s Guide to the Netezza Data Loading Guide.

New and Modified System Views Release 6.0.x introduces several new and modified system views. For a description of the more common user views, see the Netezza System Administrator’s Guide.

Note: System views change only in a major Netezza release; they do not change for service packs or patches to a release.

The new system views are the following:

_v_constraint

_v_groom_history

_v_groom_status

_v_host_tx

1-14 20283-18 Rev.1

Page 23: Netezza Release Notes

Changes in This Release

_v_scsi_errors

_v_session_security

_v_sys_table_version_attr_added

_v_sys_table_version_attr_add_dropped

_v_sys_table_version_attr_dropped

_v_sys_table_version_attrs

_v_sys_table_version_attrs_full

_v_sys_table_version_chgs

_v_sys_table_version_defn

_v_sys_table_version_object_defn

_v_sys_table_version_rel

_v_dotnet_catalogs1

_v_dotnet_catalogs2

_v_dotnet_columns1

_v_dotnet_columns2

_v_dotnet_datatypes2

_v_dotnet_datatypes3

_v_dotnet_feature

_v_dotnet_pkfk1

_v_dotnet_pkfk2

_v_dotnet_primarykeys1

_v_dotnet_primarykeys2

_v_dotnet_procedures1

_v_dotnet_procedures2

_v_dotnet_procedure_columns1

_v_dotnet_procedure_columns2

_v_dotnet_procedure_parameters1

_v_dotnet_procedure_parameters2

_v_dotnet_schemas1

_v_dotnet_schemas2

_v_dotnet_tables1

_v_dotnet_tables2

_v_dotnet_tabletypes1

20283-18 Rev.1 1-15

Page 24: Netezza Release Notes

Netezza Release Notes

_v_dotnet_types1

_v_dotnet_users

_v_dotnet_views1

_v_dotnet_views2

Table 1-1 lists the modified system views since Release 5.0. In general, system views change to improve the performance of queries that use them, or to add columns, or to ensure correct view behavior. In most cases, the view changes do not impact the results of existing queries that use these views. It is a good practice to test any queries on these mod-ified system tables to confirm that your query results have not changed from the desired results.

With the new TwinFin hardware, two views have been obsoleted in this release: _v_vacstatus and _v_reclaim_expansion. If you have scripts or queries that use these views, you will need to revise them.

Table 1-1: Modified System Views

View Name Change

_v_aggregate Added fencing support.

_v_backup_group Improvements in the view definition.

_v_backup_history Improvements in the view definition.

_v_crypto_keystore_verbose

Improvements in the view definition.

_v_depend Improvements in the view definition.

_v_external Added decimal delimiter support.

_v_external_xdb Added decimal delimiter support.

_v_function Improvements in the view definition.

_v_group Added workload management/GRA improvements.

_v_jdbc_bestrowidentifier1

Improvements in the view definition.

_v_jdbc_bestrowidentifier2

Improvements in the view definition.

_v_jdbc_bestrowidentifier3

Improvements in the view definition.

_v_jdbc_tables1 Improvements in the view definition.

_v_jdbc_tables2 Improvements in the view definition.

1-16 20283-18 Rev.1

Page 25: Netezza Release Notes

Changes in This Release

_v_jdbc_tables3 Improvements in the view definition.

_v_library Improvements in the view definition.

_v_obj_relation Improvements in the view definition.

_v_obj_relation_xdb Improvements in the view definition.

_v_odbc_specialcolumns1

Improvements in the view definition.

_v_odbc_specialcolumns2

Improvements in the view definition.

_v_odbc_specialcolumns3

Improvements in the view definition.

_v_odbc_statistics1 Improvements in the view definition.

_v_odbc_statistics2 Improvements in the view definition.

_v_odbc_statistics3 Improvements in the view definition.

_v_odbc_tables1 Improvements in the view definition.

_v_odbc_tables2 Improvements in the view definition.

_v_odbc_tables3 Improvements in the view definition.

_v_oledb_tables1 Improvements in the view definition.

_v_oledb_tables2 Improvements in the view definition.

_v_procedure Added variable argument support and other improvements.

_v_relation_column Improvements in the view definition.

_v_relation_column_def Improvements in the view definition.

_v_relation_column_def_xdb

Improvements in the view definition.

_v_relation_column_xdb Improvements in the view definition.

_v_relation_keydata Improvements in the view definition.

_v_relation_keydata Improvements in the view definition.

_v_relation_keydata_xdb Improvements in the view definition.

_v_restore_history Improvements in the view definition.

Table 1-1: Modified System Views (continued)

View Name Change

20283-18 Rev.1 1-17

Page 26: Netezza Release Notes

Netezza Release Notes

_v_session_detail Improvements in the view definition.

_v_statistic Improvements in the view definition.

_v_sys_constraint Improvements in the view definition.

_v_sys_database Improvements in the view definition.

_v_sys_group Improvements in the view definition.

_v_sys_miscobjs Improvements in the view definition.

_v_sys_object_data Changes to the view to add new objects.

_v_sys_priv Improvements in the view definition.

_v_sys_relation Improvements in the view definition.

_v_sys_relation_xdb Improvements in the view definition.

_v_sys_user Improvements in the view definition.

_v_sys_user_priv Improvements in the view definition.

_v_table Improvements in the view definition.

_v_table_constraint Improvements in the view definition.

_v_table_constraint_xdb Improvements in the view definition.

_v_table_dist_map Improvements in the view definition.

_v_table_dist_map_xdb Improvements in the view definition.

_v_table_index Improvements in the view definition.

_v_table_index_xdb Improvements in the view definition.

_v_table_organize_column

Improvements in the view definition.

_v_table_xdb Improvements in the view definition.

_v_table_zmap_column Improvements in the view definition.

_v_thin_table Improvements in the view definition.

_v_thin_table_xdb Improvements in the view definition.

_v_user Added authentication improvements.

_v_user_security Improvements in the view definition.

Table 1-1: Modified System Views (continued)

View Name Change

1-18 20283-18 Rev.1

Page 27: Netezza Release Notes

Known Issues

Known Issues

Table 1-2 describes the known issues for this release of the Netezza software.

Table 1-2: Known Issues

Reference Issue/Description

4062 The Netezza does not support abort privileges for the group public.

9323 When using the to_timestamp conversion function, which takes an input and a template string, the number of spaces in both strings must match. The following example uses the character “^” to represent a space.to_timestamp('2002-09-26^15:00:00','YYYY-MMDD^HH24:MI:SS')In the above example, the conversion function works as expected. In the following example, there is an extra space in the template string:to_timestamp('2002-09-26^15:00:00','YYYY-MMDD^^HH24:MI:SS')In this case, the extra space before the “HH” causes the function to ignore the “1” in the “15” string, thus returning an incorrect result.

10205 The following are restrictions on the simultaneous use of an external table:

• Only one session can write to an external table at a time.

• Simultaneous writing and reading of an external table is not supported.

Any number of users can read an external table at the same time. In the absence of a session currently writing to the external table, any number of readers are permitted.

Note: The Netezza system does not enforce these restrictions. It is up to the user and application code to abide by them. If you do concurrent or multiple inserts into an external table, the content of the file that stores the external table may contain partial or incomplete records.

12007 The nz CLI commands are unable to detect a missing value for the -u option, unless it is the last option or you pass it as a quoted empty value (as in -u '' ).

12289 Do not quote numbers in lists. When you place numbers in lists without quotes, the parser is able to associate the number with the correct datatype.

20283-18 Rev.1 1-19

Page 28: Netezza Release Notes

Netezza Release Notes

12621 UTF8: exists clauses with nchar class columns and UTF8 encoding result in equality operator errors. For example:

select col1_nchar3 from join_utf8_1 where exists(select col2_nchar10 from join_utf8_2 wherecol2_nchar20 = col2_nvarchar5 and col2_nchar20 =col2_nvarchar15 ) order by col1_nchar3 DESC limit 100;

The workaround is to use the cast function. For example:

select col1_nchar3 from join_utf8_1 where exists(select col2_nchar10 from join_utf8_2 whereCAST(col2_nchar20 as nvarchar(20)) = col2_nvarchar5 andCAST(col2_nchar20 as nvarchar(20)) = col2_nvarchar15 )order by col1_nchar3 DESC limit 100;

12666 SQL operations on a float column can yield inconsistent results if not used properly. The hashing of floating point data can result in certain SQL operations returning inconsistent results if not used correctly. Inconsistent results can occur if floating point columns are used as the distribution key, as a join column, or in group by, order by, and distinct select operations.Floating point columns should not be used for such operations.

Note: A floating point column is a column defined in the CREATE state-ment with a datatype of FLOAT, DOUBLE, FLOAT4, or FLOAT8.

12895 You must explicitly specify the tab delimiter in the nzsql create external table command.

12965 Update statements involving very wide tables (over 200 columns) may take an unexpectedly long time in a query processing phase, which can-not be terminated.A work-around is to disable optimization for large queries. To do this, set the host.gencDiabKillOptMask host process variable to -1. Note that the system must be paused or offline.

15917 Through NzAdmin or nzsql, if a user who has the ALTER USER privilege renames a user who is currently connected to the Netezza, the renamed user may observe the following when attempting to access a table:

• The Netezza may respond that the table cannot be found.

• The Netezza may report that the connection to the server was lost.

17311 The system treats time values without timezones as GMT times. An example follows: create table ttz (ttz timetz); (a time with timezone column)insert into ttz values (‘1:00’); (a time value without a timezone)select * from ttz; (shows the value having timezone offset 0 (GMT))

17442 For system efficiency, avoid using joins with external tables.

Table 1-2: Known Issues (continued)

Reference Issue/Description

1-20 20283-18 Rev.1

Page 29: Netezza Release Notes

Known Issues

1844618447

Certain operations do not work on synonyms. For example, you cannot generate statistics on synonyms, nor can you truncate a synonym.

19743 Avoid setting the nzload -maxErrors switch to a number higher than 100000. Although there is no restriction as to what you can set -maxErrors to, a -maxErrors switch set too high can cause the system to create very large .nzlog and .nzbad files, which are then not returned to the client. In this case, if you cannot find .nzlog and .nzbad files on your client, you can find the very large files on the server.

19891 Some joins involving the use of an external table will cause the follow-ing error:

Error: 1000000161: query does not support complex External Table scan

Note: In the example, the number displayed after the word “ERROR” is the internal table ID.

You can load the data from the external table into a user table first and modify the query to use the new user table for the join query.

20265 When you change the default case of the system between the time a database backup is made and the time it is restored, during restoration the system does not recreate the database views. For example:

• You backup a database that has views.

• You change the default case on the system.

• You restore the database to the system (whose default case has changed).

• Note that view creation fails, but the restore completes.

• You can find failed create view statements in the log file restoresvr.log.

To avoid this issue, recreate your backups after changing the default case on your system. As a work-around, you can manually recreate views using the view definitions you find in restoresvr.log.Besides views, this same situation exists for permission grants (users, groups, and target objects). You can find failed statements signifying permission grants in restoresvr.log.

Table 1-2: Known Issues (continued)

Reference Issue/Description

20283-18 Rev.1 1-21

Page 30: Netezza Release Notes

Netezza Release Notes

20426, 20512

The system creates the default nzlog and nzbad filenames by taking the table name and the database name, and appending .nzlog or .nzbad. Here are the formats:

tablename.databasename.nzlog

tablename.databasename.nzbad

Since there is a filename limit of 255 characters, if you use an extremely long table and database name, you could exceed the filename limit. If you exceed the limit, the system returns an error message stat-ing that the file name is too long.You can avoid this issue by specifying a shorter name for your nzlog and nzbad files. You can also use the -lf option for the nzlog file, and the -bf option for nzbad, in order to specify names.

21171 Correlated subqueries are not supported in a SELECT column list.

21207 Do not use CREATE EXTERNAL TABLE with the SAMEAS option to cre-ate a table that duplicates a system catalog, where the system catalog includes text datatype columns.

21439 When you use a LIMIT clause with an external table, and the load option remotesource is set to “odbc” or “jdbc”, the load will succeed but the client may receive a “communication link failure.”

21441,21922

There is new behavior with respect to implicit type casting in order to bring the Netezza in line with the SQL Standard. In comparisons between disparate datatypes, earlier Netezza versions would sometimes incorrectly cast non-string types to strings. For example, in a comparison between an integer column and a string column, Netezza might convert the integer to a string type for the com-parison. This was incorrect. Now, the string column will always be converted to an integer for such a comparison (and runtime conversion errors will occur if the string data cannot be converted to an integer value). Another example is a comparison between an integer column and a timestamp column. In the past, Netezza might have converted both to strings for the comparison. This was incorrect. Now, Netezza will give a syntax error on such a comparison. If this new behavior is not what you desire, you need to use explicitly cast operations to force the datatype conversions you need.

21519 If a load is aborted due to a shared memory allocation issue, check to see that the shmall and shmmax settings in /etc/sysctl.conf are set cor-rectly. (The settings can vary based upon your system configuration.)

Table 1-2: Known Issues (continued)

Reference Issue/Description

1-22 20283-18 Rev.1

Page 31: Netezza Release Notes

Known Issues

21643 When you negate an integer of a given integer type, the result is an inte-ger of the same type. There is an issue with negating the most negative values that Netezza supports. When you negate the most negative value that Netezza sup-ports for a given integer type, the result is the same negative value. For example, if col1 is a byteint and contains -128, the statement “select -col1” will return -128 (an incorrect result).This issue applies to all four integer types: byteint, smallint, integer, and bigint.

21698 Netezza does not currently support the HP-UX Itanium 32 bit driver with DataDirect DM.

24793 In rare cases, a large number of schema objects could cause a backup or restore to fail with memory limitation problems. In such cases, you may need to adjust how you backup or restore your database. An exam-ple follows:You attempt to backup or restore a database that includes a large num-ber of columns (such as more than 520,000). You receive an error message that indicates a memory limitation.To avoid this limitation:

• For a database backup, segment your database into multiple data-bases, each with fewer than 520,000 table columns.

• For a database restore, perform a schema-only restore followed by two or more table-level restore operations.

26925 If you use LDAP user authentication, note that LDAP server timeouts can impact the admin user account. If a Windows Server running Active Directory is in an in-between state (that is, it is up but it is not respond-ing to pings or it is slow to respond to requests) the Netezza server may become unresponsive while waiting for the request to be answered or to timeout. No users will be able to authenticate during this time, includ-ing the admin account. Also nz* commands such as nzstate and nzsession could hang during this time. Active sessions will not be impacted. Once the authentication request has completed or the timeout value has been reached, the Netezza server will respond normally.

Table 1-2: Known Issues (continued)

Reference Issue/Description

20283-18 Rev.1 1-23

Page 32: Netezza Release Notes

Netezza Release Notes

27054 When the number of active connections—both user connections and process connections—reaches the limit defined by the max_connections postgresql.conf configuration setting, some system components may be unable to connect to the system database. When this occurs, the affected component may terminate and cause the sys-tem to shut down. As a best practice, plan the maximum number of simultaneous user connections as follows: use the value of max_connections and subtract twice the total number of simultaneous reclaims, loads, and backups that could run on the system. The result is the approximate maximum number of user connections. The maximum can vary at times based on the number of connections in use by reclaims, loads, backups, and pro-cesses such as rollbacks and aborts.

40686 The ODBC and new OLE DB driver setting “Optimize for ASCII charac-ter set” impacts situations when binary data is passed in fields such as CHAR and VARCHAR types. If you are using ODBC or OLE DB and have such fields, enable the “Optimize for ASCII” driver setting.

Note: If you use binary data in CHAR/VARCHAR fields and you also have Unicode characters in CHAR/VARCHAR fields, the same client cannot support both of those conditions.

If you use a JDBC driver, binary data in CHAR/VARCHAR fields is han-dled correctly if you use a byte stream to return results. If you are using a string to return results, Java also interprets the binary values which can impact the data.

41328 Following an upgrade, the NzAdmin Backup History dialogs cannot dis-play logs for backups that occurred prior to the upgrade. The upgrade process compressed the log files in the /nz/kitOld location in a .gz file. The upgrade and backup history documentation will be revised to note this behavior in a future release.

42522 If you have an Netezza system with the Red Hat 5.2 operating system and you plan to use LDAP authentication, there is a known issue in the /etc/ldap.conf file. Before you use the SET AUTHENTICATION com-mand to change from local to LDAP authentication, edit the /etc/ldap.conf file and comment out the following line:

uri ldap://127.0.0.1/

Then, save the file and proceed with the LDAP configuration instruc-tions as documented in the Netezza System Administrator’s Guide.

42568 The nzconvertsyscase command does not change the case of unquoted objects in query history configurations. If you have created query history configurations, and you change the letter casing of the Netezza system, you must recreate the query history configurations to use the correct casing for database and user names.

Table 1-2: Known Issues (continued)

Reference Issue/Description

1-24 20283-18 Rev.1

Page 33: Netezza Release Notes

Known Issues

43084 For the new Linux-HA cluster solution, the crm commands could return this message when they are run on the last day of the month:

ERROR: crm_abort: ha_set_tm_time: Triggered non-fatalassert at iso8601.c:879 : rhs->tm_mday < 0 || lhs->days== rhs->tm_mday

resource nps is running on: hostname

This message is a known issue for the Linux clustering software reported on the Linux software forums. The message is benign and can be ignored.

45183 Query history can sometimes cause the nzupgrade command to “hang” with the message “Journal recovery in progress.” This message indi-cates that data is being loaded into the history database, and the command is waiting for the load to complete. This problem usually occurs in testing environments where the load intervals and thresholds are set very low. These settings allow users to load the recent query history into the database on an almost continuous basis for immediate querying of the history data. Such low settings are not recommended for or used in production environments. If you encounter this upgrade problem, you can correct the problem by disabling history collection and then restarting the Netezza software before you upgrade. For more information about disabling query history collection, as well as for the recommended settings for the loading intervals, see the Netezza System Administrator’s Guide.

45302 Run GENERATE STATISTICS on your query history database periodi-cally to improve query performance for the database. You should run GENERATE STATISTICS on the history database if you notice that his-tory queries are running slower than expected or after the database contents change significantly.

47974 In some instances, the NPS does not remove sessions that were stopped by an nzsession abort command. A session can remain present and in the disconnected state if there is still activity such as a rollback in progress on the session.

48959 The system manager may not catch some rare exceptions during start-up, which can sometimes result in a “system stuck in initialization” state message.

48993 The system automatically truncates leading and trailing spaces in a delimited identifier. If you use leading and trailing spaces to format out-put, for example, make sure that you precede leading spaces and end trailing spaces with a non-space character to preserve the spacing in the identifier.

49122 The nzsqa disk -detail all command displays the message: Error: multi-ple SPUs did not respond to 'Dump.’

Table 1-2: Known Issues (continued)

Reference Issue/Description

20283-18 Rev.1 1-25

Page 34: Netezza Release Notes

Netezza Release Notes

49374 The Web Admin Search feature cannot find numeric hardware IDs such as SPU IDs.

49397 If a regeneration command fails because of pending I/O on the source disk, the system manager may report “error removing the disk from md.” In this event, the system proceeds to a rediscovering state and the source disk will be considered as failed. The system will use the source’s mirror disk for queries. You should start a regeneration process to the spare drive to proceed.

49551 If you call the trunc() function with a literal “negative zero” value that also includes a decimal point, such as trunc(-0.0) or trunc(-0000.), it returns the error “Unable to identify a function that satisfies the given argument types.” In previous releases, these function examples returned the value “0”.

49984 If a SPU fails to send its PollReady response within the PollReadyTime-out, the system manager fails the SPU and brings the system to the down state. Contact Netezza Customer Support for assistance with trou-bleshooting the SPU failure.

50265 The to_number() function ignores invalid characters and will produce the result of a negative number instead of throwing an error message.

50653 If you install the Web Admin client on a TwinFin system, you could encounter an error when the httpd service attempts to restart:

/usr/sbin/httpd: symbol lookup error: /lib/libssl.so.6: undefined symbol: FIPS_mode

As a workaround, you can manually change the libssl.so.6 object library link as follows:

Note: If secure LDAP is in use or will be used on your Netezza host, do not use this workaround as you could interfere with secure LDAP opera-tion. Instead, consider installing Web Admin on its own Linux server in your network.

1 Log in as root to the Netezza system and change to the /lib directory.

2. Verify that the libssl.so.6 shared object library is present in the directory using the following command (the link output may be dif-ferent on your system):ls libssl.so.6lrwxrwxrwx 1 root root 16 Jan 26 11:33 libssl.so.6 -> libssl.so.0.9.8e

3. Use the following command to remove the symbolic link:

rm libssl.so.6

4. Create a symbolic link for a new libssl.so.6 library as follows:

ln -s libssl.so.0.9.7a libssl.so.6You should now be able to start the httpd service.

Table 1-2: Known Issues (continued)

Reference Issue/Description

1-26 20283-18 Rev.1

Page 35: Netezza Release Notes

Known Issues

50918 In NzAdmin, in the left navigation tree view, the Query History pop-up menu options for Filter, Summary, and Action are present but do not cause the selected action to occur.

51063 During the installation of the Web Admin client, the following messages may appear but they can be ignored:Installing web services RPMs ... /sbin/ldconfig: /usr/lib/libcpqlsptransport.so.0 is not a symbolic link ./unpack: line 302: 4.6.6: command not found

51184 If you are changing the internal IP configuration of the TwinFin system, make sure that you follow the documented instructions in the Netezza System Configuration Guide. You must run nzupgrade -r upgrade after the configip script and the IMM addressing steps to complete the procedure.

51977 When you back up a database, Netezza always creates the specified backup location even if the backup is aborted later due to lack of suffi-cient disk space to hold the backup.

52675 If you have the Advanced Security features enabled and you are using the audit history feature to monitor failed authentications, you could encounter a rare situation where a postmaster core occurs and the sys-tem transitions to the Stopped state. If you encounter this issue, you should disable auditing of authentication failures.

55153 The OBDC and JDBC drivers do not receive parameter metadata from the host and therefore cannot display information for calls to methods such as getParameterType and getParameterTypeName.

60198 If you run the nzrelcaim command and specify a specific database (-db mydb) and the -allTbls option, note that there is a rare case where the nzreclaim command could fail. If the SQL user name of the owner of any of those tables contains a pipe character (|), the command will not parse the table name correctly and nzreclaim will fail.

60575 If you remove and replace the ESM 2 card, the hardware information may contain incorrect information for the status and serial numbers of the ESMs. For example, ESM 1 may have two entries — a correct entry and an incorrect entry that shows the mm1 device with mm2’s serial number, and an Inactive/Missing entry for ESM 2.

60629 If you use row-secure tables (RST) and perform incremental backups of those tables, note that you should not perform more than 12 incremen-tal backups. Make sure that you create a full or cumulative backup of those tables more frequently. The restore process can restore up to only the 12th incremental backup.

Table 1-2: Known Issues (continued)

Reference Issue/Description

20283-18 Rev.1 1-27

Page 36: Netezza Release Notes

Netezza Release Notes

Customer Bugs Fixed in This Release

Table 1-3 lists the customer-reported bugs that were fixed or closed in Release 6.0.

60653 Queries which invoke a stored procedure in the place where a user-defined function (UDF) is supported can result in a code generation failure and a DBOS reset. This query should instead return an error as a stored procedure cannot be used in the same manner as a UDF.

60768 An incorrect error message is displayed for a query that uses a select statement as an argument to rank, percent_rank, or cume_dist with WITHIN GROUP clause. The error message appears as “ERROR: sub-queries are not permitted in WITHIN GROUP ORDER BY clause” but the correct message should be “ERROR: subqueries are not permitted in WITHIN GROUP ORDER BY clause.”

60843 If you run nzreclaim -allDbs -t mytbl, and mytbl does not exist in any of the databases, the command does not display an error that the table was not found.

60947 When you are using the NzAdmin interface and you are creating a table, note that you must use the default letter casing of the system when you type column names for any organizing keys or distribution keys. Other-wise, the distribution and organization of columns will not work.

60951 If you downgrade from Release 6.0.x to 5.0.x and you have set the max-Connections system configuration setting to a value greater than the maximum of 2000, the initial start of the NPS software may fail and cause the downgrade to hang. To resolve this issue, open a second con-sole window to the active host, run the nzstart command, and then follow the directions to modify the /etc/sysctl.conf file. After you save the changes, run nzstart and allow the nzupgrade command to proceed.

Table 1-2: Known Issues (continued)

Reference Issue/Description

Table 1-3: Customer-Reported Bugs Fixed in Release 6.0

Number Summary

12914 Displays an error message if a user specifies multiple data files when cre-ating an external table.

20991 Adds support to allow a user to comment on objects such as databases and tables if that user owns the object.

21418 Adds support for cube and rollup functions.

24471 Changes the name of the internal meta-data indexes _i_shadow_name and _i_shadow_sysid to _i_user_name and _i_user_sysid.

1-28 20283-18 Rev.1

Page 37: Netezza Release Notes

Customer Bugs Fixed in This Release

26241 Fixes an issue to allow substring as a user-specified value. It was a reserved keyword in the SQL ‘89 and ‘92 versions, but is not reserved in the ‘99 or ‘03 versions.

26706 Adds more integer overflow protection processing to improve queries that combine integers of different sizes.

26994 Fixes an issue where a CREATE EXTERNAL TABLE AS command resulted in the error “attribute ‘?column?’ duplicated.” Netezza no longer returns this error if you are creating transient external tables; it allows you to cre-ate the table. For a persistent external table, the error has been modified to “Attribute '?column?' is repeated. Must have an appropriate alias” to clarify that you need to specify an alias for a duplicate column name.

40841 Fixes an issue where, if you disabled short query bias (SQB) support, the system still applied SQB evaluation and also reserved scheduler slots and memory for those plans. Note that if you disable SQB on a very busy sys-tem, short queries will take longer to complete.

40929 For filesystem backups, adds support for configuring the maximum size of a backup file to ensure that local filesystem configuration limits are not exceeded.

41164 Fixes an issue where “bad float4 input value” errors occurred when real and float data types contained “infinity” values.

42586 Improves the GRA algorithm that determines which job to take from the scheduling queues when short and long jobs are queued and have same priority.

44221 Fixes an issue where a UNION query that includes numeric comparisons could return the error “CNumeric32 : narrowing to signed 32 bit representation.”

44668 Adds support for AIX 6.1 client drivers.

46056 Fixes an issue where the ODBC driver was not returning the correct indi-cator value when fetched data length is larger than the application buffer length supplied in SQLGetData.

45332 Adds support for ABSTIME in DBOS. Queries which use this variable no longer return the error “Not available in NPS.”

45718 The system now honors the default session priority for the admin user account.

46028 Adds support to allow administrators to create database user accounts that authenticate locally when the system is configured to use LDAP authentication.

Table 1-3: Customer-Reported Bugs Fixed in Release 6.0

Number Summary

20283-18 Rev.1 1-29

Page 38: Netezza Release Notes

Netezza Release Notes

46108 Fixes an issue where the stored backupset is kept active in the TSM ver-sioning system and copy group retention settings are not implemented.

46230 Adds support to the backup and restore code to ensure that the table-level restore code drops a table and its altered versions during a restore.

46269 Improves error messages that appear when a database user account’s password has expired.

46559 Adds Windows 7 support for Netezza Windows clients.

46806 Fixes an issue where the which command on UNIX clients (except Linux) did not check that a found file was an executable file.

46895 Improves the WLM priority weighting assignments for multiple priority lev-els by starting with the highest priority and adjusting the priority weightings successively for each of the lower priority levels.

47076 Adds support for escape sequence as input parameter value through ODBC SQLBindParameter.

47190 Fixes a display issue for an internal ODBC tool.

47332 Fixes an issue where a query using a DISTINCT clause returned “ERROR: -1 : Invalid group reference in expr for aggr” when the query is executed.

47602 Improves OLE DB load performance of tables that have many rows but few only a few narrow columns.

48096 Adds support to stored procedures for query text that includes extra semi-colons.

48116 Adds improvements to the _v_functions view to ensure that users can see only the functions that they are permitted to see, not all functions.

48229 Adds OLE DB support for parameterized queries in batch mode.

48727 Fixes a two-phase planner condition where a NOT IN query was not pro-cessed correctly.

49575 Fixes an issue while converting from double to numeric(18,11) that only 6 digits after decimal point are retained and the rest is truncated.

49901 Adds support for boolean datatype in the window aggregate functions first_value, last_value, lead, and lag.

49940 Fixes an issue where the JDBC driver incorrectly truncates spaces for a column of type NCHAR that has a fixed length. When a length is speci-fied, the value returned for that field must be space padded if required.

Table 1-3: Customer-Reported Bugs Fixed in Release 6.0

Number Summary

1-30 20283-18 Rev.1

Page 39: Netezza Release Notes

Customer Bugs Fixed in This Release

50198 Adds support for fractional seconds in now(), CURRENT_TIMESTAMP and CURRENT_TIME.

50421 Changes the ctas_autostats_min_rows registry setting from an INT to a DOUBLE so that users can specify values greater than 2.14 billion rows (2,147,483,647).

50653 The Web Admin client now installs an ODBC client to ensure correct oper-ation with Apache libraries and Postgres.

Note: If the destination Linux system already had an ODBC driver installed, the Web Admin installation will back up the old .odbcinst.ini file and create a new one. The installer warns you of the backup; if you had customized the driver configuration file, you may need to apply the changes to the new file.

50687 Fixes an issue where query history data failed to insert to the history data-base due to non-numeric values for estimated costs.

50844 Adds online help to the NzPortal interface.

50878 Adds improved password management support to prompt the user to change initial account password.

50888 Sets the S-Blade BIOS boot failure process to disabled so that consecu-tive failures do not reset the BIOS to default settings.

50901 Fixes an issue where the Web Admin interface did not display the correct version information.

50907 Fixes an issue where a subselect in an ORDER BY clause was lost during window aggregate transformations, resulting in a DBOS reset for the query.

50985 Fixes an issue where CREATE EXTERNAL TABLE with a rank() function returned an error that a subselect in the FROM clause may not have SELECT INTO.

51159 Adds multiple destinations support for backups to and restores from file-system locations.

51228 Updates the NzAdmin Alerts page to remove issues that do not apply to TwinFin systems.

51300 Fixes an issue where NzAdmin incorrectly allowed users to manage per-missions for SECURE TABLE objects; this is incorrect and SECURE TABLE has been removed as an object type in NzAdmin.

Table 1-3: Customer-Reported Bugs Fixed in Release 6.0

Number Summary

20283-18 Rev.1 1-31

Page 40: Netezza Release Notes

Netezza Release Notes

51467 Adds a new ODBC 4.x driver option loadRoundFraction to restore a 3.x driver behavior that allowed float/double ODBC data types to be loaded or inserted into numeric columns, resulting in values that are rounded to two decimal places. On Windows clients, you set the option using the Advanced DSN Options tab of the ODBC Data Source Administrator win-dow. On UNIX clients, you set the loadRoundFraction = true option in the .odbc.ini file. The default is false. For more information on using these interfaces and files, see the Netezza ODBC, JDBC and OLE DB Installa-tion and Configuration Guide.

51548 Adds logging support when the client manager requests a large (and unsupportable) amount of memory to note the request and the amount for improved troubleshooting.

51561 Adds improvements to the password management support.

51926 Fixes an issue where a query that uses a mix of table names and syn-onyms for table names returned inconsistent results.

51939 Fixes an issue where the fixed-format loading support did not correctly process empty date/time delimiters (no delimiters) in combination with particular date/time styles.

51965 Fixes an issue where the concatenation of a a Unicode string literal resulted in unexpected extra spaces.

52055 Netezza now considers dimensions with MVIEWS for prebroadcasting. At prebroadcast time, the system determines which of the narrowest MVIEWS satisfies the attributes needed for the table.

52386 Fixes an issue where a record counter during a hash join process over-flowed and resulted in a “not enough memory to partition hash join” error.

Table 1-3: Customer-Reported Bugs Fixed in Release 6.0

Number Summary

1-32 20283-18 Rev.1

Page 41: Netezza Release Notes

Customer Bugs Fixed in This Release

52414 Adds two session variables that control how Netezza behaves when per-forming a SQL cast of an empty string or a string of only spaces to any number type (integers, floats, and numerics). In earlier releases, Netezza cast empty strings to the number 0 in some cases and returned an error in others. With this change, Netezza allows you to control the behavior of these casts using the cast_empty_str_zero and legacy_cast_sr_to_num session variables.

• For the legacy_cast_sr_to_num variable, the default of true causes Netezza to keep the same casting behaviors as in their prior release. if set to false, the system uses the value of the cast_empty_str_zero vari-able to control the casting behavior.

• For the cast_empty_str_zero variable, the default of true causes Netezza to cast an empty string or a string of only spaces to the num-ber 0. If set to false, the variable causes these casts to return an error.

You can control the variables during a database user session using, for example, the "set cast_empty_str_zero = false;" command at the nzsql prompt. You can also change the system-wide setting by editing the value of the variable in the /nz/data/postgresql.conf file. (After you change a postgresql.conf variable setting, you must stop and restart the Netezza software for the change to take effect.)

52461 Fixes an issue where a bulk insert fails with a JDBC error “Unable to establish loopback connection.”

52463 Improvements to zonemap expression preparation to improve query performance.

52506 Fixes an issue where the CREATE EXTERNAL TABLE “compress on” option was not recognized as a valid option.

52612 Adds four views for listing details of primary key and foreign key con-straints of tables.

52897 Reduces query errors when the DBOS memory requirement estimates for a memory-based sort are slightly greater than the estimates calculated by the SPU.

52904 Added fixes to nzload to support '\|' when -truncString and -escapeChar options are enabled.

53075 Fixes an issue where a UNION operation with multiple data types on each side of the operand could result in the error “UNION types "varchar" and "int4" not matched” if the values resolved to two different data types.

53187 Fixes an issue where altering a keystore password and then reloading the passwords (such as after a system restart) can result in user login failures due to corrupted passwords.

Table 1-3: Customer-Reported Bugs Fixed in Release 6.0

Number Summary

20283-18 Rev.1 1-33

Page 42: Netezza Release Notes

Netezza Release Notes

53225 Fixes an issue where the system did not grant permission on _v_oledb_types1 to all users.

53323 Updates the pinned frame buffers processing of windowed aggregates.

53358 Fixes an issue where nzload with variable-length fields (varchar, nvarchar types) could create tables that were much larger than expected.

53437 Fixes an issue where a query caused a DBOS reset because JIT statistics plans included PARAMs or subplan expressions that had not yet been evaluated.

53443 Fixes an issue where an NzAdmin user could not change his password using the interface.

53509 Fixes an issue in the just-in-time join estimations that caused an increase in the run-time for queries.

53672 Fixes an issue that occurred when a query with a load operation that was aborted caused a rare condition where Postgres dropped a temporary table that was still being used by DBOS.

53888 Fixes a memory accounting issue for disk-based sorting. This change helps to reduce incidents where S-blades become unresponsive due to Linux memory paging.

53972 Removes FPGA messages that appeared to be errors but which were used internally for information.

54000 Fixes an issue where physical port monitoring errors were being written to stdout, not sysmgr logs, and the XML message was being truncated.

54003 Fixes an issue in the disk-based hash join planner that improves the esti-mation process for determining whether the join inner table can fit in memory or if it must be processed on the disk.

54007 Fixes an issue where a query that used grouped windowed aggregates resulted in a postmaster reset.

54107 Fixes an issue where to_date could return an invalid results error for rare cases.

54113 Improves the behavior of the 4.6.6 JDBC driver to more efficiently esti-mate the column sizes of an external table.

54184 When a SELECT query was cancelled via OLE DB connector, the system was incorrectly cancelling a subsequent SELECT query.

54186 Fixes an issue where the ODBC driver did not create nzlog or nzbad files when loadMaxError is greater than the number of invalid records or there were no invalid records.

Table 1-3: Customer-Reported Bugs Fixed in Release 6.0

Number Summary

1-34 20283-18 Rev.1

Page 43: Netezza Release Notes

Customer Bugs Fixed in This Release

54189 Improves XML error handling in the physical port error monitoring scripts.

54191 (53726)

Adds the improved physical port monitoring support.

54305 Fixes an issue where a result set can become truncated when the JDBC setFetchSize parameter is set to a value larger than the batch size.

54321 Fixes an issue with the numeric scale of a quotient involving the numeric cast of a literal value. While often harmless, this could result in an incor-rect value if the quotient was being inserted into a CTAS result table.

54326 Fixes an issue in stored procedure queries to ensure that parameter sub-stitutions occur earlier in the planning phases.

54327 Adds more troubleshooting controls to error out on unsupported correlated query which would otherwise cause a Netezza restart.

54389 Improves system manager processing for S-Blades that have invalid serial numbers to ensure that those blades are not added to the catalog, but instead report a hardware service requested event for those problem blades.

54407 Improves disk scheduling fairness algorithms relating to workload man-agement to ensure that urgent IO requests do not wait for active IOs of a lesser priority to complete.

54423 Fixes an issue where the _vt_disk_log planid column was null in some cases when it could have had data.

54426 Fixes an issue where the _vt_disk_log table's sqb attribute is always set to "f" for short query bias (SQB) disk jobs that have priority "0".

54469 Improves the performance of CREATE TABLE operations when large CTAS operations are taking place simultaneously.

54472 Fixes an issue where the NzAdmin interface did not use the value of envi-ronment variables such as NZ_CLIENT_MGR_PORT.

54501 Fixes an issue where the system manager restarted S-Blades because it incorrectly believed the SPUs to be unreachable when they were too busy to respond to polls.

54518 Improves the detection of files such as transaction journal detail files that have exceeded the 2GB size limit, which can impact processes such as backups.

54599 Fixes an issue where a windowed aggregate query with an inner subquery grouping clause is not supported and now returns an error.

Table 1-3: Customer-Reported Bugs Fixed in Release 6.0

Number Summary

20283-18 Rev.1 1-35

Page 44: Netezza Release Notes

Netezza Release Notes

54717 Fixes an issue where users who run nzudxcompile as a user other than admin could receive errors that they need System privilege to run the command.

54870 Fixes an issue where ODBC with SSL option creates the file prngseed.dat in the current directory but does not delete it.

54883 Fixes an issue where nzhostrestore caused a system manager core.

54919 Improves support for managing queries on databases that are dropped while a query is running/queued for it.

55023 Fixes an issue where a query that performs a MINUS ALL operation returned incomplete results due to subquery optimization.

55027 Fixes an issue where query text is double-byte characters was divided in the middle of a character when additional text was saved in the $hist_query_overflow_1 area.

55116 Improves WLM scheduling to abort a plan which requires fixed resources that exceed the total available resources.

55123 Improves processing of merge joins with a pre-broadcasted table.

55126 Fixes an issue where a terminal window running a shell script with nohup aborted, and aborted the shell script as well.

55130 Fixes an issue where the system manager restarted after packets were dropped in the internal fabric communications during heavy communica-tion loads between the host and the S-Blades.

55136 Reduces the performance cost start-up of the NzPortal home page processes.

55217 Fixes an issue where invalid characters/entries in the postgresql.conf file could prevent system start. The system now ignores invalid entries and starts.

55282 Fixes an issue where NzAdmin incorrectly allowed users to grant permis-sions on two system tables that should have been restricted.

55313 Fixes an issue where a query returns a DEV_UEC_DATA_STORAGE error and reboots the S-Blade.

55316 Fixes an issue where a query that used an OR of user-specified cast from CURRENT_YEAR to a CHAR(4) resulted in an error for an internal function.

55321 Fixes an issue where $hist_query_epilog_1 had duplicate records due to an additional record being added when a query was aborted.

Table 1-3: Customer-Reported Bugs Fixed in Release 6.0

Number Summary

1-36 20283-18 Rev.1

Page 45: Netezza Release Notes

Customer Bugs Fixed in This Release

55368 Adds support in the ODBC driver for queries that specify a partial shape for inline external tables. You can now specify any combination of column names and/or names with data types to define the external table shape.

55413 Fixes an issue where a disk regeneration could be starved for resources and take much longer to complete when user queries were running.

55466 Fixes an issue where a first_value/last_value function on a varchar datatype can result in a SPU core file when the first returned value is a NULL and the second is non-NULL.

55471 Improves disk-based hash join table partitioning memory management. This change helps to reduce incidents where S-blades become unrespon-sive due to Linux memory paging.

55685 Fixes an issue that occurs when creating a materialized view for a very large table which results in an error that a file descriptor is too large.

55706 Improves dispersion plan estimates for inner join calculations.

55753 Improves memory allocation and deallocation routines for INLIST queries.

55852 Fixes an issue where a query with a left exists join can sometimes return a code generation error due to a mismatched label.

55910 Improves memory management during large sort operations, such as those created during TABLE AS SELECT ... ORDER BY ..., which may now com-plete successfully or return a “Disk temporary work space is full” error if the sort is too large. Previously, these queries would have returned a “not enough Sort/merge buffers” error.

55919 Improves nzchkhost to detect and error out if there is more than one file that is registered to handle the TFTP service in xinetd.

55921 Added checks to set and identify whether stack space limits on the sys-tem were overriden by user to be too low for Netezza to start.

55924 Improves error-checking and reporting for queries that use correlated sub-queries inside CASE WHEN statements, which are not supported.

55953 Fixes an issue where the left outer LEFT OUTER JOIN prevents the FACT table from streaming.

55954 Fixes an issue where a distributed hash join query resulted in S-Blade restarts due to internal record store processing.

56076 Fixes an issue where planner node processing could be impacted by a relabel node that contains a pointer to a var node.

56083 Improves sysmgr processing to ensure that it tracks background disk regenerations such as those started by the md layer.

Table 1-3: Customer-Reported Bugs Fixed in Release 6.0

Number Summary

20283-18 Rev.1 1-37

Page 46: Netezza Release Notes

Netezza Release Notes

56112 Fixes an issue where an attempt to abort a long-running query resulted in a timeout of the abort command.

56122 Improves SELECT list compaction algorithms.

56170 (56315)

Fixes an issue where the combine_label() function required improvements for OR conditions.

56246 Fixes an issue where the nzload command returned an error when the out-put path is specified using a network path name.

56292 Fixes an issue where external table loads could sometimes return unex-pected token errors.

56318 Fixes an issue where a query with a limit 0 failed in ODBC due to protec-tions designed for UDXs and stored procedures.

56361 Improves the scan time and performance of CTAS operations on tables that have materialized views associated with them.

56391 Fixes an issue where the sysmgr process could restart if it ran out of mem-ory when attempting to write messages with very large fields to the sysmgr log. The resolution is to drop the overly large message and write an infor-mation message to the log.

56428 Fixes an issue where one dataslice hangs during an insert operation due to a Linux ND driver race condition.

56439 Fixes an issue where the subquery planner did not correctly apply “exists” logic to all the tables in the subquery, resulting in a postmaster reset.

56461 Fixes and issue where repeated inserts from an external table in the same session resulted in out-of-memory errors.

56633 The hardware service requested event now obtains the AMM service data logs.

56707 Fixes an issue where a query that updated a table in the catalog and a simultaneous vacuum operation on that table resulted in a postmaster reset.

56717 Fixes an issue where a query containing a sequence projected in its tar-getlist aborted with “ERROR: SPU swap partition : Disk temporary work space is full.”

56738 Fixes an issue where stored procedure field names were not being dupli-cated correctly during processing.

56789 Fixes an issue where certain client commands such as nzreclaim issued with an incorrect password resulted in a database reset.

Table 1-3: Customer-Reported Bugs Fixed in Release 6.0

Number Summary

1-38 20283-18 Rev.1

Page 47: Netezza Release Notes

Customer Bugs Fixed in This Release

56806 Fixes an issue where a log file exceeded 2GB in size and resulted in a Netezza restart.

56879 Adds support to the JDBC driver to specify whether database metadata should be retrieved for all databases. For more information, see “ODBC, JDBC, OLE-DB Changes” on page 1-13.

56885 Fixes an issue where zone map min/max value settings needed to be cleared following an INSERT from an external table.

56886 Fixes an issue where GENERATE STATISTICS can sometimes result in an S-Blade core on heavily loaded systems.

56921 Improves the internal spinlock processing timer to avoid timeouts after the maximum number of client connections has been reached.

56991 Improves memory cleanup routines for certain queries that would report SPU oversubscribed memory errors.

56996 Queues certain commands such as a TRUNCATE during system startup to ensure that all resources are started and online before DB activity occurs.

57029 Updates the EM support to ensure that the status of the EMs is checked and updated regularly. If the active EM fails, the passive EM is checked and brought to active status.

57052 Fixes an issue where the nzsasphysw command returned an incorrect SPA number.

57055 Improves internal processing to free resources associated with deleted record store files in the disk temporary work space. This helps to reduce cases where subsequent queries could return “ERROR: SPU swap parti-tion : Disk temporary work space is full.”

57114 Suppresses a Netezza event when an AMM reboots, because during that transition, the AMM returns the “notAvailable” state for chassis power supplies for about 5 seconds.

57115 Fixes an issue where select list compaction for a temporary query resulted in a postmaster problem.

57133 Updates NzAdmin to include the Release 6.0.x privileges.

57170 Improves system manager to detect and ignore duplicate poll call mes-sages on the S-Blades when network links are restored to service.

57187 Improves the error check messages for duplicate objects and names.

57223 Adds support in the ODBC driver for queries that specify a partial shape for inline external tables. You can now specify any combination of column names and/or names with data types to define the external table shape.

Table 1-3: Customer-Reported Bugs Fixed in Release 6.0

Number Summary

20283-18 Rev.1 1-39

Page 48: Netezza Release Notes

Netezza Release Notes

57368 Fixes the lock table code to ensure that a process that locks a table and subsequently tries to update it is not locked out in the case when such a process can run multiple times concurrently, as in a stored procedure.

57438 Fixes an issue where a right join query returned a 0 instead of a NULL when there was no match between the joins.

57452 Fixes an issue where concurrent SELECT NEXT VALUE FOR SEQUENCE operations resulted in one completion and one hang due to lock mecha-nisms on TwinFin.

57484 Improves the system manager processing for devices such as S-Blades and disks that are “orphaned” (that is, they lost parent-device information).

57522 Improves the host memory allocation and cleanup for bridge queries that include a limit 0 constraint, which can sometimes cause the host to run out of its reserve memory.

57543 Fixes an issue where queries that use grouping sets could error out with “ORDER/GROUP BY expression not found in targetlist” due to optimizer changes.

57686 Fixes an issue where the _t_attrdef table was capturing information but was not being cleaned up during vacuum processing, resulting in a large size that impacted Netezza processing.

57714 Improves the query abort processing so that an active query that is aborted cleans up and exits faster.

57802 Fixes an issue where a restore to a database which has existing UDX or stored procedure objects fails.

58037 Fixes an issue where a hashed aggregate query did not correctly process the rowid information.

58076 Adds information to the Netezza System Administrator’s Guide to describe how to set the Tivoli transaction size value.

58131 Fixes an issue where the optimizer was recomputing the distinct clause of a select query too early in the optimization process.

58200 Improves management and processing of disk failures to harden system reaction to these occurrences.

58264 Fixes an issue where nzstats -type hostfilesystem returned invalid results due to a field value overflow.

58292 Fixes the trunc() function to ensure that it checks a numeric value's scale and precision before processing.

Table 1-3: Customer-Reported Bugs Fixed in Release 6.0

Number Summary

1-40 20283-18 Rev.1

Page 49: Netezza Release Notes

Customer Bugs Fixed in This Release

58341 Adds support to allow the field delimiter in an external table to contain decimal, octal, and hexadecimal number representations.

58401 Fixes an issue where NzPortal monitoring queries were failing because the queries used implicit cross-join queries which were not allowed on the system.

58429 Fixes an issue where you cannot create a numeric type with a length equal to the length of the numeric.

58478 Fixes an issue where significant external table creation tasks resulted in postmaster cores.

58562 Fixes an issue where an incremental restore of a table that changed names between the backup and the restore resulted in a core file.

58565 Fixes an issue where an internal stored procedure routine threw an uncaught error when it could not find a global variable, resulting in a host reboot.

58579 Improves signal-handling code.

58590 Fixes an issue where the “show locks” command failed with an invalid UTF-8 sequence error due to handling of multi-byte characters.

58675 Fixes an issue where the Beta version disk space usage may have been reported incorrectly in applications such as NzAdmin and nzds.

58701 Fixes an issue where queries that end in strings which appear to relate to "Offset" or "Limit", such as "o", "l", "off", "limi", results in a parser code problem.

58817 Corrects the Netezza Database User’s Guide to note the correct Julian start date of November 24, 4714 BC.

58844 Fixes an issue where user sequences in a query FROM list or TARGET resulted in a “no such table exists” error.

58883 Fixes an upgrade issue during 5.0.x to 6.0 upgrades that checks for an reports on tables with incomplete zone maps.

58888 Fixes an issue where DBOS reset during a system-generated query scan.

58945 Fixes an issue where queries on tables that had more than four entries in an INLIST restriction ran slower on 6.0 than in previous releases.

59033 Improves the disk path failure processing to display path event messages for the disk slot and enclosure number when a failed drive is removed from the system.

Table 1-3: Customer-Reported Bugs Fixed in Release 6.0

Number Summary

20283-18 Rev.1 1-41

Page 50: Netezza Release Notes

Netezza Release Notes

59140 Improves database locking mechanisms to allow a read lock on objects when a database is in read-only mode.

59205 Fixes an issue where an error occurs when users run GENERATE STATIS-TICS from NzAdmin or NzPortal.

59217 Fixes an issue where dispersion values were not correct due to casting of integer data types.

59242 Fixes an issue where insert operations failed in early Beta kits due to problems clearing inserter record entries for failed or aborted inserts.

59276 Ensures that additional instances of internal host application processes, which are normally invoked by the nzstart command, cannot be started using a command line operation other than nzstart.

59399 Improves session management tracking when the system is running numerous jobs of the same type, such as reclaim sessions, to ensure that individual session references are updated correctly.

59690 Updates the stored procedure logic to prevent a stored procedure from dropping an active stored procedure.

59785 Fixes an issue where GEN STATS did not correctly process certain fixed-length columns in early 6.0 beta builds.

59830 Fixes an issue where the FPGA image required an update.

59873 Adds the FRU value to the email notification for the SCSIPredictiveFail-ure event type.

60031 Improves the management of disk labels to ensure that disk replacements do not impact other active disks.

60198 Fixes an issue where the nzreclaim script attempted to groom non-table objects.

60312 Fixes an issue where frequent updates and rollbacks could result in mem-ory cleanup issues and out-of-memory errors.

60769 Fixes an issue where kernel driver settings impacted the performance of some disk-based queries.

60770 Fixes an issue where Compress Engine II internal processing increased the time for certain CTAS insert and update operations.

60799 Fixes an issue where the Web Admin client did not install due to an unde-fined SSL symbol.

Table 1-3: Customer-Reported Bugs Fixed in Release 6.0

Number Summary

1-42 20283-18 Rev.1