The PHP development team announces the immediate availability of PHP 7.0.0 Alpha 2. This is the second pre-release of the new PHP 7 major series. All users of PHP are encouraged to test this version carefully, and report any bugs and incompatibilities in the bug tracking system.
For the Brazilians…
Essa é a última semana para se inscrever no Firebird Developers Day pagando menos! A grade de palestras já está fechada, confira agora mesmo no site www.FirebirdDevelopersDay.com.br e se inscreva!
Lembrando que na véspera do evento, teremos uma MasterClass sobre otimização de performance, com Dmitry Yemanov e Alexey Kovyazin. Confira as informações sobre a MasterClass e se inscreva aqui.
Microtec is pleased to announce a new release of our database replication engine, CopyCat Developer !
CopyCat Developer is a set of Delphi / C++Builder components providing customizable replication for Firebird, Interbase, Microsoft SQL Server, MySQL, NexusDB, SQLite, PostgreSQL and Oracle, including heteogenous replication between different database types.
Have a look at our site for more information : http://www.copycat.fr
This new release includes the following improvements:
* New error handling mechanism:
– Removed RPL$ERRORS table and TCcReplicator.LogErrors property.
– Added some new fields to RPL$LOG (ERROR_MESSAGE, ERROR_CONTEXT).
– Rows that cannot be replicated are now left in RPL$LOG with their ERROR_MESSAGE and ERROR_CONTEXT set.
* New option to keep rows in RPL$LOG
– A new property TCcReplicator.KeepRowsInLog allows you to keep replicated rows in RPL$LOG. This gives you a very detailed trace of everything that took place, and can be used instead of the depecated RPL$TRACE mechanism for debug purposes, or for auditing.
– Rows that have been replicated will have their RPL$LOG.REPLICATION_STATE set, so if you want to see the rows that need to be replicated, you check where REPLICATION_STATE is null.
– TCcReplicator: If a row can’t be replicated due to an error, we now place it in a list of failed rows, and continue to replicate. If the same row was changed again at a later point in the repliaction cycle, we skip it and leave it unreplicated. This is particularly important when using the new ReplicateOnlyChangedFields option, as data changes could otherwise get lost (and to avoid such problems, it would have been necessary to perform the entire replication cycle within a single transaction).
– TCcReplictor: Added a new SkipToRemote option in OnReplicationError event allowing you to skip replication of local rows if an error occurs, but to continue replicating the remote changes to the local database. This feature makes sense only if using ReplicateOnlyChangedFields. Using this option, you can ensure consistency (by rolling back when there is a replication error) without aborting replication altogether.
– TCcReplicator: Added queryPerformed parameter to OnRowReplFinishing and OnRowReplicated events, so that you can know what type of action was performed on the row (delete, update, or insert).
– TCcConnection: fixed a bug that sometimes caused an access violation when destroying a TCcConnection.
– Fix for SQL Server to correctly handle primary key fields of date or timestamp type.
– TCcConfig: fixed a bug causing the OnExecute event of the TCcConnection not to fire while using TCcConfig.
– TCcConfig: Added OnProgress event allowing you to keep the GUI active (using an Application.ProcessMessages for example) while configuring the databases.
– TCcConfig: Some internal meta-data caching during configuration so as to improve performance over slow connections.
– TCcConflictMgr: fixed a bug causing all the rows in RPL$LOG for a given row/table to be set to conflicted state rather than just the rows being replicated.
– FIREBIRD ONLY: Fixed a bug causing the new ReplicateOnlyChangedFields feature to fail when replicating floating point values on systems using a decimal separator other than ‘.’.
– FIREBIRD ONLY: Added a new RPL$NO_REPLICATION context variable. If you set this variable to ‘True’, the replication triggers will be by-passed. This is very useful if you want to execute a script that will cause massive updates to a large table.
– TCcLog: fixed a bug that caused the conflict detection mechanism to fail sometimes.
– TCcLog: fixed a bug that caused very bad performance when detecting a conflict using ReplicateOnlyChangedFields, in cases where there were a lot of changes in RPL$LOG.
– TCcQuery: Fixed a bug causing the OnExecute event not to get fired.
LINBIT, the leading provider of Linux based storage replication and disaster recovery, has announced the general availability release of its DRBD9 software. Developed to provide end-users, OEMs and ISVs a powerful tool to build redundant, highly scalable and flexible storage architectures, LINBIT’s new DRBD9 is the first replication design capable of connecting 30 nodes in real time to ensure data availability from multiple locations – even when disaster strikes.
Don’t try to read from an empty buffer
In some cases getSegment can get an empty (undefined) buffer which result to InternalError: "Cannot call method 'readUInt16LE' of undefined".
If you want to test apache with php 7 on windows here are the links
The firebird extensions are there, as you can see in