|OBJY-16403||Crash when adding an attribute with a default value to a new class||Specifying a default value for an unevolved class
should result in an error or exception, not lead to
a segmentation fault.
|OBJY-18740||Regression: Assist only shows the 1st element in Array||Assist only shows the first element of an array object when viewed through the Object window.||Assist Plug-in|
|OBJY-18825||Schema commit causes crash||Assist may crash if a class in a schema is modified by:
1. Removing the base class
2. Adding the base class again
To avoid simply commit after the base class is removed.
|OBJY-19672||Assist FD Reconnect Support on Unix||Assist supports reconnecting to a FD and switching between FDs on Mac and Linux platforms as well.||Assist Plug-in|
|OBJY-20202||Assist does not detect correct JRE bitness when launching from installer||The installer will update the -vm option for Assist, in ooassist.ini, with the detected JRE executable. If this executable is removed, then this option must be updated or removed from the ini file.||Assist Plug-in|
|OBJY-14533||API/Tool that directly changes a container's growth rate after it has been created||C++ API that directly changes a container's growth rate after it has been created has been introduced.
You can use the new changePercentGrowth method of the ooRefHandle(ooContObj) classes to change the growth factor of an existing container. This method accepts an integer and should be called in a separate transaction.
|OBJY-15115||Access violation crash occurs if ooObjy::shutdown() is called without finishing transaction.||Access violation crash occurs if ooObjy::shutdown() is called without finishing transaction.||C++|
|OBJY-15322||Ability to run startup() after calling shutdown()||The restriction for only having the ability to call startup and shutdown once has been removed.||C++|
|OBJY-18014||ooNewConts macro incorrectly limits users using a new catalog FD to creating batches of containers no greater than the maximum number of supported containers for old catalogs (32764)||ooNewConts macro should allow creating 65533 containers in an empty database but throws an error if the container batch size is greater than 32764||C++|
|OBJY-18017||ooNewConts macro cannot be used to create containers up to the maximum number of supported IDs (new catalogs)||The ooNewConts macro does not allow creation of containers with ID 65534 and 65535.||C++|
|OBJY-20445||Detaching a session acquired from a session pool without attaching it back before shutdown will lead to an access violation||Detaching a session acquired from a session pool without attaching it back before shutdown will lead to an access violation||C++|
|OBJY-18901||ooNewConts not as fast as regular container creation on Linux||Performance improvement changes to the ooNewConts macro were made that will affect all platforms. Further improvements were made to UNIX based platforms.||C++ Performance|
|OBJY-20206||Make 3'rd-party sources available to the public||To comply with licensing agreements and for the convenience of our customers all source code for open source projects used by Objectivity Inc. products have been made available to the public via our FTP site ftp.objectivity.com.||Customer Support|
|OBJY-20403||Remove all static libraries from the distribution||Static libraries will no longer be shipped on all non-Windows platforms and will be made available to customers on request.||Distribution|
"Checking for an Enabled Recovery Monitor
You can run the oocheckls tool to find out whether a lock server on a particular host is running with the recovery monitor enabled. "
Added a similar comment to the reference entry for the oocheckls tool.
|Documentation : Administration|
|OBJY-18414||OBJY-18410 Document changes if any for this compiler option change||Already covered in the release notes:
Replaced C++ Library on UNIX Solaris Architectures
Objectivity/DB libraries are now built with -library=stlport4 instead of
|Documentation : Installation|
|OBJY-18865||Remove mandatory installation to the arch subdirectory||The installer creates a symlink with the old arch name, which points to the installation directory, on non-windows platforms.||Documentation : Installation|
|OBJY-19023||OBJY-19021 Doc update for -OBJY-19021-Change linux shared library names/numbers to match other platforms||Updated compatibility section of the release notes to specify that Linux shared library names now include version numbers.||Documentation : Installation|
|OBJY-18914||OBJY-18607 document ooObjectQualification move to com.objy.query package||Existing applications that import com.objy.db.app.ooObjectQualifier will need to change the import statement to reference the new package. No change is needed to classpath.||Documentation : Java Programmer's Guide|
|OBJY-19091||parallelScan method API of ooFDObj and ooDBObj is misleading||The method parallelScan(String className, String predicate) of both ooFDObj and ooDBObj do not use the DefaultQuerySplitter class, as stated in the Java API documentation.||Documentation : Java Programmer's Reference|
|OBJY-20038||unable to properly create arch symlink on Solaris||Installation: Unix|
|OBJY-13895||ODBC driver does not get updated in Windows Registry if the ODBC driver is installed after installing the other products.||On a fresh system that never had Objectivity before,
if you install Objectivity with all the products except
ODBC driver and SQL, then go back and install these
products, then the Objectivity ODBC Driver does not
show up as a selection of Data Sources.
Examining the registry shows that the following key
is not there although we expect it:
HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\Objectivity ODBC Driver
|OBJY-16856||Request to not start AMS by default during windows installation.||For security reasons, AMS and the query server
are now installed as services, but configured to require manual startup. If you
use either or both of these services, you can use your operating system to
configure the service for automatic startup. For details, see the installation and
configuration documentation on Objectivity Developer Network.
|OBJY-16921||Windows uninstall fails when it is unable to stop the lockserver when there are locks left behind.||Windows uninstall should exit with a more meaningful message, when it is unable to stop the lockserver when there are locks left behind.||Installation: Windows|
|OBJY-14765||in R9.4 prebuild, jvm crashes due to resize of varray in full container||When a container is full, increasing the size of an array of
persistent objects can lead to a VM crash.
|OBJY-15179||ooTreeMapX containsKey and get method does not return anything when passing transient objects||ooTreeMapX containsKey and get method does not return anything when passing transient objects||Java|
|OBJY-15872||JVM crash if Federation has expired license on connection.loadSchemaClasses(true)||JVM crash if Federation has expired license on connection.loadSchemaClasses(true);||Java|
|OBJY-16215||ooTreeSetX.get() unexpected behavior||Collection classes should not persist a transient object when used for lookup.||Java|
|OBJY-16332||Need ooNewConts macro exposed in OFJ||A new public method named called createContainers is available in the com.objy.db.app.ooDBObj class to allow the batch creation of containers.||Java|
|OBJY-16870||Regression: JVM crashes when trying to dropAllUserClasses||Calling the dropAllUserClasses method on a Connection object in Objectivity for Java with the forceCacheRefresh parameter set to true can cause a crash.||Java|
|OBJY-18024||NullPointerException when scan encounters an indexed object||Java|
|OBJY-18381||Container creation via ClusterStrategy will eventually fail if a container was previously added manually with a contId approaching 65535||Explicitly adding a container with a large container ID(approaching the maximum number of containers) may cause eventual container creation to fail with the following error:
ooContObj::operator new: Storage Manager: Creating an already existing Container #2-65530 (100350)
|OBJY-18611||Regression: Filling up a container can result in NullPointerException||If a container fills up when writing objects, and the cluster strategy allows creating a new container if needed, implicit moving of the last object from the full container to the new container can result in a NullPointerException.||Java|
|OBJY-18730||Java app crash when creating a large number of objects with arrays||If a container fills up when writing objects with arrays, and the cluster strategy allows creating a new container if needed, implicit moving of the last object from the full container to the new container can result in a crash.||Java|
|OBJY-18748||Calling refresh() on a container will unconditionally mark all its objects in the cache as fetchRequired.||Previously calling refresh would incorrectly mark all objects within that container as fetchRequired even if that container had not been updated. We have now updated the behavior so that calling refresh on a container that has not been updated will now only lock the container with the specified lock type.||Java|
|OBJY-18758||objectFrom returns a duplicate object||ooFDObj.objectFrom method can return a new object rather than one that already exists in the OFJ session cache.||Java|
|OBJY-19117||Remove DefaultQuerySplitter class||Remove DefaulQuerySplitter from java distribution as our Objectivity/DB has a more performant version built in.||Java|
|OBJY-19150||Explicit fetch() call fails to fetch object||If a container is looked up but not fetched, and the reference to the container is then used in a subsequent transaction, it was incorrectly assumed that the container had already been fetched. This causes calling the ooContObj.fetch() to have no effect in subsequent transactions.||Java|
|OBJY-19166||Move clusterstrategy class to internal namespace||Starting in R11.0, placement managed federated databases will supersede explicit placement into containers and databases using clustering strategies. As a result, the following classes will be moved from the com.objy.db.app package to com.objy.db.internal and com.objy.db.internal.storage packages. The classes will still be public for backward compatibility.
Moved to com.objy.db.internal:
Moved to com.objy.db.storage.internal
|OBJY-19209||OBJY-16464 add function haveSessionPool to Java||Add haveSessionPool function to all Connection class to allow for checking of the existence of a session pool||Java|
|OBJY-19253||NullPointerException when attempting to access an embedded object array||NullPointerException when attempting to access an embedded object array.||Java|
|OBJY-19293||ClassNotFoundException exception is thrown when accessing a subclass whose base class is processed with connection.setSchemaClassName||ClassNotFoundException exception is thrown when accessing a subclass whose base class is processed with connection.setSchemaClassName.||Java|
|OBJY-19730||Calling setFormTransientRelationships with true will disable unrelated functionality||Calling a Session's setFormTransientRelationships method with true may result in the inability to establish bidirectional relationships between a persistent and transient object.||Java|
|OBJY-20054||Need new overload for parallelScan without QuerySplitter and remove the unused filterName parameter from existing overloads.||The following java methods ooDBObj and ooFDObj have changed in R11:
public Iterator parallelScan(String className, String predicate, QuerySplitter qs, String filterName)
public Iterator parallelScan(String className, ObjectQualifier oq, QuerySplitter qs, String filterName)
public Iterator parallelScan(String className, String predicate, QuerySplitter qs)
public Iterator parallelScan(String className, ObjectQualifier oq, QuerySplitter qs)
(removed the unused filterName parameter).
The following method has been added to ooDBObj and ooFDObj for use placement managed federated databases, which requires no QuerySplitter:
public Iterator parallelScan(String className, ObjectQualifier oq)
|OBJY-20447||Refresh no longer unconditionally locks a container||Refresh no longer unconditionally locks a container||Java|
|OBJY-20458||Stale/cache issues present in post R10.0, not seen in R9.4.1||Cache issues in the Java binding with MROW transactions and the use of isUpdated/refresh.||Java|
|OBJY-20460||We should have an equals function on ooObj||Objectivity for Java's caching uses weak references. Because of this, it is not always safe to purely compare objects by Java identity. Therefore we have overloaded the equals function to be able to compare Java objects by their Objectivity database identity via the oid. Note however that since it is possible to have transient instances of persistent capable classes, if any of the instances that are part of the equals comparison are transient we use the java.lang.Object equals method which compares Java identity.||Java|
|OBJY-18694||PQE crash on OS X||Affects Mac OS X. If the CoreFoundation framework is used, objy executables that load a plugin can crash.
In one instance a parallel scan crashed:
Running parallel scan...
** System Error #11020: Network Manager: A connection with <host>
** System Error #8385: Error in socket read: A connection with
<host> was broken
com.objy.db.ObjyRuntimeException: <ooItr>.next(): Query Manager thread terminated by exception: Error in socket read: A connection with <host> was broken
<ooItr>.next(): Query Manager thread terminated by exception: Error in socket read: A connection with <host> was broken
For a workaround if a customer has a plugin that uses the CoreFoundation framework, use the "DYLD_INSERT_LIBRARIES" environment variable to instruct the runtime link loader to load the CoreFoundation framework library before starting the server that will load the plugin.
% export DYLD_INSERT_LIBRARIES
That will cause the to pre-load the CoreFoundation framework soit gets initialized in the main queryserver thread.
|OBJY-18236||Move Session class to it's own namespace and add extension methods to classes that have previously had access to it||Session class now resides in the Objectivity.Db.Sessions namespace. The Session property in ObjyConnection has been replaced with the GetSession extension method available via the Sessions namespace||Objectivity .Net for C#|
|OBJY-18237||move collections classes to it's own namespace||Collections classes that were once in Objectivity.Db have now been moved to Objectivity.Db.Collections.Specialized||Objectivity .Net for C#|
|OBJY-19277||OBJY-19011 update internal class classes to be placement compatible||Genealogy, HashMap, HashSet, TreeList, TreeMap, TreeSet, and Map now have constructors that take a PlacementConditions (making them placement managed compatible). KeyField and KeyDescriptor are now marked as for backwards compatibility as managed placement federations handle index creation for the user.||Objectivity .Net for C#|
|OBJY-15967||MROW test reveals the following: ooOpenContainers: Opening moved container 3-42 (3-5) is not supported||An MROW application opening multiple containers may sometimes result in crash or an error like this:
ooOpenContainers: Opening moved container 3-42 (3-5) is not supported
|OBJY-16225||crash after getSessionFromPool timeout||If a call to ooConnection::getSessionFromPool times out, a
subsequent call to returnSessionToPool may crash.
|OBJY-16424||crash occurs when trying to resize for a 32 bit to a 64 bit format||A crash sometimes occurs when trying to resize a 32 bit object to a 64 bit format.||Objectivity/DB|
|OBJY-16449||a crash occurs in ooOpencontainers during MROW testing||An MROW application opening multiple containers may sometimes result in crash or an error like this:
ooOpenContainers: Opening moved container 3-42 (3-5) is not supported
|OBJY-16458||Error #4670: Read page error: checksum comparison failed for physical page||
checksum comparison failed for physical page" was reported during a
checkpoint, but running "ootidy" corrects the problem.
|OBJY-16464||Request for method to check existence of session pool||Added a new function to bool haveSessionPool(const char* sessionPoolName) for checking existing session pool by name.||Objectivity/DB|
|OBJY-18036||ooOpenContainers() doesn't work with external containers||ooOpenContainers was failing with misleading error messages if any of the containers are in a separate file.
When using ooOpenContainers() to lock external containers the call will throw one of the two exceptions...
Error in test: ooOpenContainers: Non-versioned container 2-6 is not supported. (100314)
Error in test: ooOpenContainers: Opening moved container 2-13 (2-13) is not supported. (100310)
|OBJY-18490||SIGSEGV, Segmentation fault in ooSession::releaseFiles (found on Linux, not observed on Windows)||Calling ooSession::releaseFiles before starting a transaction is observed to crash on Linux platform.||Objectivity/DB|
|OBJY-18680||ooSession::commit: Storage Manager: Internal assertion failure: osmControl.cxx:577: fileDesc->closest->controller (0)||Attempting to create a container and call ooRefHandle(ooContObj)::exist(ooMode openMode) n*255 times on that container in the same transaction, where n is an integer greater than zero and openMode equals ooRead or ooUpdate, results in the container closing prematurely upon commit. The container will be inaccessible, as can be seen from oocheck reporting that the container cannot be opened. Furthermore, reusing the same ooSession object in a subsequent update transaction can result in ooSession::commit: Storage Manager: Internal assertion failure: osmControl.cxx:577: fileDesc->closest->controller (0) upon commit.||Objectivity/DB|
|OBJY-18698||can't create a container with a very large explicit container number||When creating a container, if a container ID number is explicitly
provided and that number is widely separated from any existing
containers (by an order of a few thousand), the creation may fail with
the following misleading message:
** Error #4563: ooContObj::operator new: Storage Manager: Creating an
already existing Container #x-xxxx (100350)
|OBJY-18966||Relaxed Tx Integrity for commits||Added API (For advanced users only) to control a session's policy for synchronizing database and journal files
whenever a transaction commits:
void ooSession::setNoSync(ooBoolean noSync);
See the C++ reference for additional information.
|OBJY-19027||Multiple MROW update transactions within the same session cause considerable database file growth||If a container has one MROW read transaction which is never terminated, update transactions on that container never get a chance to re-use pages from older versions, so the database size keeps growing with each update transaction.
To determine if you are losing pages, set OO_INTERNAL=1 and run oocheck. It will report the lost pages as unaccounted pages.
oocheck -db dbname -pages bootfile.boot
WARNING: Unaccounted 560 page(s) in 2-3.
WARNING: Unaccounted 32 page(s) in 2-4.
WARNING: Unaccounted 870 page(s) in 2-12.
WARNING: Unaccounted 143107 page(s) in 2-13.
ootidy can recover these pages.
|OBJY-19414||After ootidy, MROW updater hangs on internal index container while only MROW reads are going on||Objectivity/DB|
|OBJY-20015||Stale cache pages not being refreshed when deleting/recreating a database||The session cache results in stale information, when deleting and recreating a database, outside of the current process.||Objectivity/DB|
|OBJY-20217||segv loading schema in solaris86_64 format on linux86_64||Previous to this fix the linux86_64 and mac86_64 platforms could not work with data in sparc64 and solaris86_64 formats - and vice versa.||Objectivity/DB|
|OBJY-20225||Scanning the same container in different threads can cause exception||Objectivity/DB|
|OBJY-20308||Index creation causes assertion error on customer's federated database||The following assertion error is seen while creating indexes:
** Fatal Error #900: ooClusterStrategy::newObj: Assertion fails
(!(pgp->flag & ((uint8)0x20))) at line 211 in file
|OBJY-19009||update wizard and newfd form to always create FD with managed placement||Peristence Designer will now always create a managed placement federation. User should use oonewfd command line too to create a non-managed placement federation.||Persistence Designer|
|OBJY-19309||OBJY-16654 remove FD number choice from Persistence Designer||Persistence Designer no longer requires fd id as this will be auto generated.||Persistence Designer|
|OBJY-18941||As an Application Developer using the Placement Manager counts, I want to be able to query the entire federation for the total number of instances of a particular type.||Use Placement Manager counts to enhance queries on the federation for total number of instances of a particular type.||Placement Manager|
|OBJY-20320||ooRefHandle(ooObj)'s move, copy and setVersStatus methods will signal an error if called within a placement managed federation.||Placement Manager|
|OBJY-16204||Plugin Framework should verify that the plugin implementation is the correct type of object||The Plugin Framework is being extended to provide for verifying which extension point is being implemented by a plugin library.||Plugin Framework|
|OBJY-18592||Object loses type information in scan||Python Language Binding|
|OBJY-17712||Multithreaded client app with single process ID calls ooSession::recover() which causes Objectivity/DB confusion||Platform: Windows
Calling explicit recover() from a multithreaded application can cause a Objectivity/DB confusion which can lead to errors such as these:
 ooSession::checkpoint: Error communicating with Lock Server on host "hostname": Error sending to Lock Server on host hostname- Connection reset by peer
System error:  ooSession::checkpoint: Storage Manager: Lost access to boot partition (104655)
User error:  ooSession::checkpoint: Storage Manager: Commit transaction failed. Transaction aborted (100456)
A temporary workaround is to not call recover() explicitly and letting autorecovery recover failed and completed transactions.
|OBJY-20314||GraphView does not evaluate predicates||There are two problems with GraphView methods includeClass or excludeClass
which specify a predicate when applied to InfiniteGraph data:
* Subclasses of the designated class are excluded.
* For edge classes, the predicate does not get tested.
|OBJY-20317||GraphView: inclusion/exclusion of class hierarchies||Exclusion of IG edge classes was not working for classes with an included subclass.||Relationship Analytics|
|OBJY-18584||Illegal physical alteration of shape during an ooupgrade -all -pagesize||ooupgrade may sometimes fail with the following error:
Error #15436: ooschemaupgrade: Illegal physical alteration of shape
1001: Could not change the association _assocVArray to a
Error: Unknown exception in ooupgrade main
Upgrade failed - processing was terminated by an error.
|OBJY-19118||simple schema evolution triggers evolution of large number of classes||At times, certain schema changes are observed to trigger schema evolution in several related classes although evolution wasn't really necessary for these classes.||Schema Evolution|
|OBJY-19709||Deleting a class wrongly assigns new typenumbers to all previous shapes of the class||Deleting a class and dumping the schema shows that the typenumber of all the older shapes of the class have been reset to be the same as the shape number, as if each shape is now a new class and not an evolution. And the same class ends up with several type numbers.||Schema Evolution|
|OBJY-19557||unable to start ams||Server - AMS|
|OBJY-18770||Failover Function (Windows Server 2K8R2 Enterprise) Fails on Lockserver||On previous versions of windows (XP and prior), popup dialogs were allowed to accomadate for user interaction from services. This is no longer allowed as it has been identified as a security risk. As a result the lockserver will be forced down in instances where we previously asked for permission from the user, and a message will be generated in the event viewer, when a shutdown is initiated by windows services.||Servers|
|OBJY-19135||inconsistent location of VPL file on Windows (regression and incompatibility)||Servers|
|OBJY-17792||Replace the .Net AMS with an IOCP based socket server.||The max # of threads for AMS server and lock server are dropped from 256 to 64.||Servers - AMS|
|OBJY-15939||Latches should not wait forever||A customer found a case where a crashed application was holding a latch (lock) to a
Fake OC, and all processes waiting for this latch waited forever despite setting lock
wait time to 5 seconds using ooSetLockWait
|Servers - Lockserver|
|OBJY-16654||Create and recognize FD's with a globally unique ID (GUID) that is supplied internally||Added new olmInitFdId support for auto FDID assignment on the lockserver.||Servers - Lockserver|
|OBJY-15854||oobackup and other tools fail/crash when run as standard user||oobackup fails when run as standard user on Windows Server 2008||Tools|
|OBJY-18113||Error during oobackup yet the backup process finishes successfully (Error #4571: Storage Manager: Machine type not supported for conversion)||Certain corruption in the database will allow oobackup to complete, but subsequent oorestore may fail with this error:
** Error #4571: Storage Manager: Machine type not supported for
conversion (101910): #3-19-49-0
Please run oocheck before running oobackup. Contact Customer Support to fix any errors reported by oocheck.
|Tools - Backup and Restore|
|OBJY-18729||oobackup and oorestore to report warning for timestamp error in OBJY-18644 and continue||oorestore of a backup of a database may sometimes fail with an error like this, even though oobackup completed with no errors.
** Error #4400: Storage Manager: FD updateTS 1 is smaller than OC #87-46
updateTS 742 (100655)
This indicates a certain discrepancy in the page map of the database.
oobackup and oorestore need to issue a warning when they encounter the timestamp discrepancy in the pagemap, and continue running.
|Tools - Backup and Restore|
|OBJY-18756||oobackup corrupts a corrupt database even more||Running oobackup on a database with certain page map corruptions can lead to the restored DB being irreversibly corrupt.
If oocheck reports the following error(or something sililar), please do not backup the database. Contact Objectivity Customer Support to fix the DB.
** Error #4668: Storage Manager: Internal error: Read page error:
expected page xx of version xx of OC x, but got page xx
of version x of OC xx while reading physical page db-oc
with lock=x (104344): #db-oc-page-0
|Tools - Backup and Restore|
|OBJY-18943||ooRestore V10.2.1 may restore V9.4.1 backups incorrectly||R9.4.1 tools may encounter issues with some containers which were modified by R10.x.||Tools - Backup and Restore|
|OBJY-20286||oobackup inventory prevents update transactions from committing, which in turn can block MROW readers||oobackup's inventory process may delay update transactions from committing. These blocked update transactions may in turn prevent certain MROW transactions from obtaining a lock.||Tools - Backup and Restore|
|OBJY-19783||Attaching a copy of a database with deleted container(s) may leave the copy in a fragile state||When a copy of a database that has had containers deleted is attached to the same federated database, attempting to add a new container to the copy may result in an exception.
ooContObj::operator new: Storage Manager: Internal error: Found container <ORIGINAL_DB>-<DELETED_CONTAINER> when opening <COPY_OF_ORIGINAL_DB>-<DELETED_CONTAINER> (123459)
|Tools - ooattachdb|
|OBJY-18359||oocheck crashes while running on a customer's database||oocheck is observed to crash on a certain database without reporting any errors.||Tools - oocheck|
|OBJY-19837||oocheck and oofix do not report/fix some association errors||oocheck and oofix do not report or fix certain association inconsistencies.||Tools - oocheck, oofix|
|OBJY-18940||oocleanup crashes with segmentation fault when trying to recover a failed transaction from adding databases to a large FD catalog||A crash might occur when trying to recover a change to the database catalog which failed because of a disk full error on the system database file.||Tools - oocleanup|
|OBJY-20110||oocleanup releases locks but does not remove journal file||ooinstallfd was not removing journal files for committed transactions.||Tools - oocleanup|
|OBJY-18727||ooconvertformat crashes while converting to hpuxia64||ooconvertformat has been observed to crash on HP itanium 64 bit platform:
Program terminated with signal 6, Aborted.
|Tools - ooconvertformat|
|OBJY-18794||ooconvertformat fails with assertion error||ooconvertformat is sometimes observed to crash with the following error:
Fatal Error #900: Assertion fails (sNum == pgp->highSlot + 1) at line
321 in file ..\sm\osmSlot.cxx
|Tools - ooconvertformat|
|OBJY-12084||ooddlx needs an option to select output directory for generated files||The DDL compiler has three new options to specify output directories to place generated files.
Directory in which to place the C++ method implementation file. If you omit
this option, the default is to create the file in the current directory.
Directory in which to place the C++ generated header file. If you omit this
option, the default is to create the file in the current directory.
Places the generated C++ file in the same directory as the DDL file
|Tools - ooddlx|
|OBJY-16664||Template Base Classes in DDL fail to compile||The C++ code generated by the DDL compiler fails to compile if a persistent class was defined in an included header file instead of in a .ddl file. The DDL compiler will now report a warning to make the problem clear.||Tools - ooddlx|
|OBJY-18939||ooddlx fails while trying to change the name of a class in a named schema||The ddl processor fails with the following error while trying to rename a class in a named schema
At end of source: error: Could not change the domain of association
<assoc> from class <class> to class <class>
At end of source: error: Illegal physical alteration of shape 0: Could not
change the domain of association <assoc>from class
<class> to class <class>
At end of source: error: Evolution Phase Failed - no persistent data changed
|Tools - ooddlx|
|OBJY-19332||OBJY-19011 update pdd file to be placement aware and update generated code to for internal classes to use appropriate constructors||pdd files created and processed by R11.0 will generate Objectivity code that will have versions of constructors (user classes and internal classes) dependent on if the federation has managed placement or not.||Tools - oofdtopdd, oopddtoapp|
|OBJY-18307||Incorrect container ID is reported by oofile for container files in a foreign platform format||The container ID reported by oofile is incorrect (uninitialized data) for container files that are in a foreign platform format.||Tools - oofile|
|OBJY-18955||oofix to be able to remove container catalog entries like dbf munge||oofix cannot fix corrupt container catalog entries and will give out this message when it encounters such a corruption:
** Error #4572: <ooItr>.next(): Storage Manager: General Conversion Error
** Error #4571: <ooItr>.next(): Storage Manager: Machine type not
supported for conversion (101910): #db-0-page-0
** Error #4572: <ooItr>.next(): Storage Manager: General Conversion Error
oofix cannot fix this problem at this time.
|Tools - oofix|
|OBJY-18519||ootidy Deletes Containers||Tools - ootidy|
|OBJY-18657||Regression: ootidy cannot create or open DB file containing large contiguous deleted container set||Although this error is seen only in debug builds, the underlying problem results in ootidy not properly setting up the container catalog, resulting in the loss of containers. Related to the bug in OBJY-18698. Affects only new catalogs(post R9.0)||Tools - ootidy|
|OBJY-13907||ooupgrade crashes with a seg fault/ core dump when there is a dangling reference in the db.||ooupgrade crashes with a seg fault/ core dump when there is a
dangling reference in the db.
|Tools - ooupgrade|
|OBJY-14269||ooupgrade crashes while iterating through an object which has
an association to a database that does not exist anymore.
|Tools - ooupgrade|
|OBJY-15327||oocheck finds errors with a database after ooupgrade and a container/database delete||oocheck reports Error #4507 on a federation after running ooupgrade and deleting a container.||Tools - ooupgrade|
|OBJY-15900||ooupgrade -licensefile option is not working||ooupgrade -licensefile does not process the supplied license file for the ooupgraded federation.||Tools - ooupgrade|
|OBJY-18165||ooupgrade with quiet option segfaults if there is an error||ooupgrade with the quiet option causes a segmentation fault.||Tools - ooupgrade|
|OBJY-18599||Tools - ooupgrade|
|OBJY-18661||Issues with ooupgrade's error reporting||Fix some issues in ooupgrade's error reporting.||Tools - ooupgrade|
|OBJY-18859||ooupgrade -systemdb crashes with cannot file DB file error||ooUpgrade crashes on certain occasions when it encounters an error.||Tools - ooupgrade|
|OBJY-18903||ooupgrade crashes if it cant connect to the lockserver||ooupgrade crashes if it cant connect to the lockserver or AMS
** System Error #3623: upgradeSystemDb: ooConnection::doAutoRecover: Cann
open journal directory
"hostname:<bootfilepath>": Cannot connect to Objectivity AMS serve
on host "hostname" -- No such host is known. .
|Tools - ooupgrade|
|OBJY-19194||ooupgrade crashes on customer DB||ooupgrade is observed to crash on a certain database.||Tools - ooupgrade|
|OBJY-19292||Upgrading from old catalogs to new catalogs using ooupgrade leaves scope names in an unclean state||Upgrading from old catalogs to new catalogs using ooupgrade may leave scope names in an unsafe state.||Tools - ooupgrade|
|OBJY-14552||ooexport/ooimport changes 0 size string to null||ooexport/ooimport changes 0 size string to null||Tools - XML tools|
|OBJY-19773||ooimport setting data to 0||ooimport has been observed to reset the int values of array elements of an embedded Varray to null in certain circumstances.||Tools - XML tools|
|OBJY-18831||Regression: Deleting inherited class and base class in 1 pass fails||A base class and inherited class were deleted during a single ooddlx evolve. Evolution occurs with no error but ooschemaupgrade reports the following error:
Error #15436: ooschemaupgrade: The base class has been deleted
|Toosl - ooschemaupgrade|
|OBJY-18085||MediaManager GUI does not ingest data||Added import functionality to the MediaManager GUI sample.||Tutorials and Samples|
|OBJY-18262||RentalFleet update thread sample crashes with a segmentation fault||RentalFleet update application fails with segmentation fault.||Tutorials and Samples|
|OBJY-18833||Java Assist Tutorial Inconsistency||Java Assist Tutorial Lesson 1 states:
4. Enter Example1.2 in the System Name field.
It should be JExample1.2 not Example1.2
|Tutorials and Samples|
|OBJY-18834||Java Assist Tutorial Inconsistency in Exercise 3.1||Exercise 3.1 of Java Assist tutorial provides code that produces an error when used as specified.
To avoid this error when using the code either:
1. Rename the "ooDBObbj db" to a different name
2. Remove the second declaration of "ooDBObj db"
|Tutorials and Samples|
Wednesday, January 30, 2013