<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Synchonisation Process if table is invalid in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/synchonisation-process-if-table-is-invalid/m-p/951360#M65252</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello!&lt;/P&gt;&lt;P&gt;Thanks for answering!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I would give a brief example:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The buffered table1 on application server1 was changed. These changes are updated on the database and in table1 of the application server1 at the same time. In the DDLOG file of the database table1 is declared as invalid (or the corresponding generic regions or records). After 20 seconds (which is within the invalidation period) application server2 accesses table1 in his buffer. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Before application server2 accesses any of the tables, does he first read the DDLOG file? Does an application server do this at every read access? &lt;/P&gt;&lt;P&gt;If he does not read DDLOG file, he does not know whether the data is invalid!!! So in my example he would read invalid data!!!&lt;/P&gt;&lt;P&gt;Is the the case in SAP? Did I understand it right! &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is there anywhere a good explanation to find in the WWW?&lt;/P&gt;&lt;P&gt;The SAP helpdata does not describe it that exactly!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you very much!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 14 Sep 2005 02:17:05 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2005-09-14T02:17:05Z</dc:date>
    <item>
      <title>Synchonisation Process if table is invalid</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/synchonisation-process-if-table-is-invalid/m-p/951357#M65249</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If a buffered table in an application server was changed, the changes are directly made on the local application server and in the database. Next in the DDLOG file (it lies on the database?) it is written, that the corresponding table or its generic region or single entries (if it is generic or single record buffered) are invalid now. After 60 seconds all other application server update their tables that were affected by changes on tables in oother application servers. This is the synchronous update process. What is when an application server reads a table in his buffer that was changed on other application servers and is thus inconsistent? Before each read access on a bufferd table does the application server check in the DDLOG file whether the table or which entries or generic regions are invalid? This decreases the performance, but otherwise it would read not up-to-date data...the application server would read inconsistent data!!!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If an application server checks data each time before an read access, how many bytes are transferred to check this?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In the helpdata of SAP I did not find an appropriate answer to my question!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Does anybody know how it works???&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks very much,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Holger Schmidt&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Sep 2005 13:21:31 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/synchonisation-process-if-table-is-invalid/m-p/951357#M65249</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-09-13T13:21:31Z</dc:date>
    </item>
    <item>
      <title>Re: Synchonisation Process if table is invalid</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/synchonisation-process-if-table-is-invalid/m-p/951358#M65250</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;That is exactly the reason why you should only buffered which are changed on a low rate, like customizing. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I cannot say how much data is transferred from database to application server to check if a buffer is invalid but even if it is low (which I assume) the point is that the data has to be transferred again to the application server. If you have many application servers the network load might also become an issue when it comes to a lot of invalidations. &lt;/P&gt;&lt;P&gt;ST13 (I think) should give some overview on how effective a buffer is, that is, how often a buffered table is hit, and how many times the table has to be "reloaded", also, how often the table has to be deleted from buffer because it was too big, etc. &lt;/P&gt;&lt;P&gt;Christian&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Sep 2005 14:52:08 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/synchonisation-process-if-table-is-invalid/m-p/951358#M65250</guid>
      <dc:creator>ChristianFi</dc:creator>
      <dc:date>2005-09-13T14:52:08Z</dc:date>
    </item>
    <item>
      <title>Re: Synchonisation Process if table is invalid</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/synchonisation-process-if-table-is-invalid/m-p/951359#M65251</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Holger,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have a slightly different understanding of buffering.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Every 60 seconds (depending on system parameter), just the status is exchanged to all application servers.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1) Access in between the first 59 seconds -&amp;gt; you only get the old data -&amp;gt; it's possible to have invalid data. So only 'unimportant' data is allowed to buffer&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2) No access in the next minutes -&amp;gt; just invalidation information was set for buffer. Only next read access will trigger re-read and database access is done. Amount of data depends on buffering-range (single /generic / full).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Consequences:&lt;/P&gt;&lt;P&gt;Most data isn't such time critical (customizing can wait a minute longer...). For general overview (empty flight-seats), performance is more important -&amp;gt; buffering is OK. In case, booking has to be done, direct DB-access should be performed (anyway, a lot of select-variants don't use buffer).&lt;/P&gt;&lt;P&gt;Tables with high change volumes cause more data traffic for buffering than buffer will bring good...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I hope I could explain the logic of invalidation.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Christian&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Sep 2005 15:49:07 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/synchonisation-process-if-table-is-invalid/m-p/951359#M65251</guid>
      <dc:creator>christian_wohlfahrt</dc:creator>
      <dc:date>2005-09-13T15:49:07Z</dc:date>
    </item>
    <item>
      <title>Re: Synchonisation Process if table is invalid</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/synchonisation-process-if-table-is-invalid/m-p/951360#M65252</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello!&lt;/P&gt;&lt;P&gt;Thanks for answering!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I would give a brief example:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The buffered table1 on application server1 was changed. These changes are updated on the database and in table1 of the application server1 at the same time. In the DDLOG file of the database table1 is declared as invalid (or the corresponding generic regions or records). After 20 seconds (which is within the invalidation period) application server2 accesses table1 in his buffer. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Before application server2 accesses any of the tables, does he first read the DDLOG file? Does an application server do this at every read access? &lt;/P&gt;&lt;P&gt;If he does not read DDLOG file, he does not know whether the data is invalid!!! So in my example he would read invalid data!!!&lt;/P&gt;&lt;P&gt;Is the the case in SAP? Did I understand it right! &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is there anywhere a good explanation to find in the WWW?&lt;/P&gt;&lt;P&gt;The SAP helpdata does not describe it that exactly!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you very much!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 14 Sep 2005 02:17:05 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/synchonisation-process-if-table-is-invalid/m-p/951360#M65252</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2005-09-14T02:17:05Z</dc:date>
    </item>
    <item>
      <title>Re: Synchonisation Process if table is invalid</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/synchonisation-process-if-table-is-invalid/m-p/951361#M65253</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Holger!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It's quite clearly stated in SAP's extended help:&lt;/P&gt;&lt;P&gt;&lt;A href="http://saphelp.euroset.lan///EN/cf/21f244446011d189700000e8322d00/frameset.htm" target="test_blank"&gt;http://saphelp.euroset.lan///EN/cf/21f244446011d189700000e8322d00/frameset.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In a lower section is written:&lt;/P&gt;&lt;P&gt;"How are the Local Buffers Synchronized?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;A buffered table is generally read on all application servers and held in the buffer there. If a program changes the data contained in the table on an application server, this is noted in the log table by the database interface. The buffers still have the old status on all the other application servers, so that the programs &amp;lt;b&amp;gt;might read obsolete data&amp;lt;/b&amp;gt;."&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Before you think about implementing an own invalidation logic, deactivate buffering. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Christian&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 14 Sep 2005 05:18:39 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/synchonisation-process-if-table-is-invalid/m-p/951361#M65253</guid>
      <dc:creator>christian_wohlfahrt</dc:creator>
      <dc:date>2005-09-14T05:18:39Z</dc:date>
    </item>
  </channel>
</rss>

