Bu Advantage Veritabanı bir hata mı?

1 Cevap php

(Ben biliyorum, biliyorum ...) Advantage Veritabanı PHP uzantısı bir hata görünüyor bana ne içine çalıştırıyorum. Ben bir hata olarak rapor ettik, ama hala geri bir şey duymadım, ben sizlerle bunu çalıştırmak düşünmüştüm.

Working Code:

for ($i = 0; $i < 100; $i++)
{
    $connection = ads_connect( 'DataDirectory=\\some\path\;ServerTypes=2;RightsChecking=Off;TrimTrailingSpaces=true;CommType=TCP_IP;', '', '' );

    $results = ads_do( $connection , 'SELECT TOP 1 * FROM projects');

    ads_close( $connection );
}

Bu sadece 100 zamanlarda, db bağlanan bir sorgu yürütür ve keser döngüler.

NON-Working Code:

for ($i = 0; $i < 100; $i++)
{
    $connection = ads_connect( 'DataDirectory=\\some\path\;ServerTypes=2;RightsChecking=Off;TrimTrailingSpaces=true;CommType=TCP_IP;', '', '' );

    $results = ads_do( $connection , 'SELECT TOP 1 * FROM projects');
    $results = ads_do( $connection , 'SELECT TOP 1 * FROM projects');

    ads_close( $connection );
}

Ikinci sorgu yürütme fark? Bu döngü hatası ile 51'inci döngüsü (db sunucu 50 eşzamanlı bağlantı her uygulamayı sınırlandırır) başarısız

Error 6303: Maximum Advantage Database Server connections exceeded.

Ben hiçbir başarı ile bu dahil olmak üzere birçok diğer şeyler denedim:

for ($i = 0; $i < 100; $i++)
{
    $connection = ads_connect( 'DataDirectory=\\some\path\;ServerTypes=2;RightsChecking=Off;TrimTrailingSpaces=true;CommType=TCP_IP;', '', '' );

    $results = ads_do( $connection , 'SELECT TOP 1 * FROM projects');
    ads_free_result( $results );

    $results = ads_do( $connection , 'SELECT TOP 1 * FROM projects');
    ads_free_result( $results );

    ads_close( $connection );
}

Bu, ancak, DOES, sorunu gidermek ve İKİ sorgular hala başarılı ve doğru yürütmek!

for ($i = 0; $i < 100; $i++)
{
    $connection = ads_connect( 'DataDirectory=\\some\path\;ServerTypes=2;RightsChecking=Off;TrimTrailingSpaces=true;CommType=TCP_IP;', '', '' );

    $results = ads_do( $connection , 'SELECT TOP 1 * FROM projects');
    ads_close( $connection );

    $results = ads_do( $connection , 'SELECT TOP 1 * FROM projects');
    ads_close( $connection );	
}

Bu, tüm bana çok garip görünüyor ... Herhangi bir fikir?

EDIT: PHP 5.2.5 ve ADS 8.1 duyuyorum

1 Cevap

Bilgi tabanı 6303 hata Bu öğeyi vardır ve nasıl bir istemci mümkün bağlantı sayısını artırmak için, http://devzone.advantagedatabase.com/dz/content.aspx?Key=17&RefNo=981124-0621. Ar-Ge anda bu sorunun içine bakarak ve bir sonraki hizmet sürümü çözülmesi için çalışıyor.