KEEP POOL and count(*)
Hello,
I resized db_keep_cache_size and altered tables and indexes -> storage (buffer_pool keep).
Now, I think, I have to select * from tables.
Is command select count(*) from table an equivalent please ?
If I run select count(*), Disk activity is on 100% and it takes 2minutes. But when I run script, where is
set termout off
select * from table;
set termout on
It takes very very long time and activity is maybe on 5%. Could you help me with this please ?
Thank you very much! :)
Ondrej T. wrote:
I'm creating application, only for one user. Data from tablespace are static - writing is not possible. Only reading.
There are 4 tables ( 7+7+3+18 ) GB.
I want to put them into keep pool. ( allocated 40GB)
I altered tables and indexes. But the data will be in pull after execution
select * from tables
When I run this command, execution is very slow. Disk usage - 5%.
1) Why? Termout is off...
When I run app, there will be checkout if the tables are in pool, if not(server restart), it will execute select * from tables.
So, why is it too slow?
( When I run select count(*) from table , disk usage is 100% )Reading 40G data from disk will take a while. Btw, do you have enough RAM to keep indexes of these tables?
Have you waited until your first select complete? What about second run?
Why don't you use an in-memory database solution such as TimesTen?
Regards
Gokhan
Similar Messages
-
Hi! every one,
can any tell me is it keep pool is foolowing the LRU alog or not if yes plz eplainHi,
I'm taking my words back, today is not my day, better go to bed and take some care of this flu.
Use of the KEEP Pool (By Don)
The KEEP database buffer pool is configured using the BUFFER_POOL_KEEP initialization parameter, which looks like this:
BUFFER_POOL_KEEP = ‘100,2’
In Oracle9i, this becomes DB_KEEP_CACHE_SIZE and is specified in megabytes.
The two specified parameters are, respectively, the number of buffers from the default pool to assign to the KEEP pool and the number of LRU (least recently used) latches to assign to the KEEP pool. The minimum number of buffers assigned to the pool is 50 times the number of assigned latches. The KEEP pool, as its name implies, is used to store object data that shouldn’t be aged out of the buffer pool, such as lookup information and specific performance-enhancing indexes. The objects are assigned to the KEEP pool either through their creation statement or by specifically assigning them to the pool using the ALTER command. Blocks already in the default pool are not affected by the ALTER command, only subsequently accessed blocks are.
The KEEP pool should be sized such that it can hold all the blocks from all of the tables created with the buffer pool set to KEEP.
Regards,
Francisco Munoz Alvarez -
Needing to add keep pool to SGA, sizing and checking for room?
Hi all,
I'm needing to experiment with pinning a table and index (recommended by COTS product vendor) to see if it helps performance.
I'm trying to set up a keep pool...and put the objects in it
I've gone into the database, and found that I will need to set up a keep pool:
SQL> show parameter keep
NAME TYPE VALUE
buffer_pool_keep string
control_file_record_keep_time integer 7
db_keep_cache_size big integer 0
That being said, and I'm having a HUGE senior moment right now...how
do I go about making sure I have enough room to make a little keep
pool?
I've looked at my objects I want to put in there, and one is about
.675 MB, and the other is about .370 MB. So, roughly a little more
than 1MB
Looking at my SGA parameters:
SQL> show parameter sga
NAME TYPE VALUE
lock_sga boolean FALSE
pre_page_sga boolean FALSE
sga_max_size big integer 572M
sga_target big integer 572M
Now...how do I find out what is being used in SGA, to make sure I have room?
I've been searching around, and trying to come up with some queries. I
came up with this one:
SQL> select name, value / (1024*1024) size_mb from v$sga;
NAME SIZE_MB
Fixed Size 1.97846222
Variable Size 232.002007
Database Buffers 332
Redo Buffers 6.01953125
From this, it appears everything is being used....so, not sure what to
do from here.
Suggestions and links greatly appreciated!
cayenneSELECT SIZE_FOR_ESTIMATE, BUFFERS_FOR_ESTIMATE, ESTD_PHYSICAL_READ_FACTOR, ESTD_PHYSICAL_READS
FROM V$DB_CACHE_ADVICE
WHERE NAME = 'KEEP'
AND BLOCK_SIZE = (SELECT VALUE FROM V$PARAMETER WHERE NAME = 'db_block_size')
AND ADVICE_STATUS = 'ON';
SELECT ds.BUFFER_POOL,
Substr(do.object_name,1,9) object_name,
ds.blocks object_blocks,
Count(* ) cached_blocks
FROM dba_objects do,
dba_segments ds,
v$bh v
WHERE do.data_object_id = v.objd
AND do.owner = ds.owner (+)
AND do.object_name = ds.segment_name (+)
AND do.object_type = ds.segment_type (+)
AND ds.BUFFER_POOL IN ('KEEP','RECYCLE')
GROUP BY ds.BUFFER_POOL,
do.object_name,
ds.blocks
ORDER BY do.object_name,
ds.BUFFER_POOL; Edited by: sb92075 on Jul 9, 2009 2:48 PM -
Query about Keep Buffer Pool and Recycle Buffer Pool
What will Keep Buffer Pool and Recycle Buffer Pool contains actually in Database Buffer Cache, specially what type of objects? I know the definitions but need to know the practical aspects about them.
918868 wrote:
What will Keep Buffer Pool and Recycle Buffer Pool contains actually in Database Buffer Cache, specially what type of objects? I know the definitions but need to know the practical aspects about them.I believe you have already got the answer from the experts. Just to echo the same, in any cache, either Buffer Cache(default), Keep or Recycle, its going to be data buffers which are actually the placeholders for the data blocks that are available on the disk. The default cache is going to throw away the lesser used buffers as fast as possible. And if you don't want this to happen, you can use either of the other two, indepandant caches-Recycle and Keep. The keep cache , as the name suggests would keep the buffers in it for a more loonger duration compared to the default cache. This probably would be a better idea when you know that some buffers are meant to be reused again and again. Recycle is going tobe for those, which are very seldom used and you don't want them to choke up the caches at all. For the buffers kept in the Recycle cache, they would be thrown out almost instantly.
Read the link that's given to you. It contains a lot of stuff that would further make things clear.
Aman.... -
I added a contact on my Mac Mini yesterday and it keeps adding the same contact over and over.. up to 4,600 duplicates and counting.. How do I stop it?
Here was the exact sequence.
1. Added a contact in Contacts.app on my Mac running OSX Mavericks 10.9
2. Contact was added to Contacts.app successfully.
3. Noticed only one contact in Contacts.app on Mac.
4. Opened Contacts on my iPhone 5S running 7.0.4 and searched for contact.
5. Noticed duplicates in Contacts on my iPhone 5S.
6. Looked at Contacts.app on Mac, Still only one.
7. Checked iPhone again, noticed several more contacts added and the data spin icon working in the status bar and more being added as I was watching.
8. Opened icloud via web browser, noticed same thing in the Contacts section.
9. Shutdown, Mac (thinking there was a bit of code open ended code)
10. turned off all iCloud Contacts on all iOS devices linked to this icloud account.
11. Less than 24 hours later... 4,600++ duplicate contacts in icloud and counting.
12. As I am writing this I deleted icloud from my mac.. thinking this is the bug's origination point.
what's next??Step 12 Stopped the duplicate contact.
Deleted iCloud from my Mac. Hope this helps someone. -
Table size exceeds Keep Pool Size (db_keep_cache_size)
Hello,
We have a situation where one of our applications started performing bad since last week.
After some analysis, it was found this was due to data increase in a table that was stored in KEEP POOL.
After the data increase, the table size exceeded db_keep_cache_size.
I was of the opinion that in such cases KEEP POOL will still be used but the remaining data will be brought in as needed from the table.
But, I ran some tests and found it is not the case. If the table size exceeds db_keep_cache_size, then KEEP POOL is not used at all.
Is my inference correct here ?
SQL> select * from v$version;
BANNER
Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - Production
PL/SQL Release 11.2.0.2.0 - Production
CORE 11.2.0.2.0 Production
TNS for Linux: Version 11.2.0.2.0 - Production
NLSRTL Version 11.2.0.2.0 - ProductionSetup
SQL> show parameter keep
NAME TYPE VALUE
buffer_pool_keep string
control_file_record_keep_time integer 7
db_keep_cache_size big integer 4M
SQL>
SQL>
SQL> create table t1 storage (buffer_pool keep) as select * from all_objects union all select * from all_objects;
Table created.
SQL> set autotrace on
SQL>
SQL> exec print_table('select * from user_segments where segment_name = ''T1''');
PL/SQL procedure successfully completed.
SQL> set serveroutput on
SQL> exec print_table('select * from user_segments where segment_name = ''T1''');
SEGMENT_NAME : T1
PARTITION_NAME :
SEGMENT_TYPE : TABLE
SEGMENT_SUBTYPE : ASSM
TABLESPACE_NAME : HR_TBS
BYTES : 16777216
BLOCKS : 2048
EXTENTS : 31
INITIAL_EXTENT : 65536
NEXT_EXTENT : 1048576
MIN_EXTENTS : 1
MAX_EXTENTS : 2147483645
MAX_SIZE : 2147483645
RETENTION :
MINRETENTION :
PCT_INCREASE :
FREELISTS :
FREELIST_GROUPS :
BUFFER_POOL : KEEP
FLASH_CACHE : DEFAULT
CELL_FLASH_CACHE : DEFAULT
PL/SQL procedure successfully completed.DB_KEEP_CACHE_SIZE=4M
SQL> select count(*) from t1;
COUNT(*)
135496
Execution Plan
Plan hash value: 3724264953
| Id | Operation | Name | Rows | Cost (%CPU)| Time |
| 0 | SELECT STATEMENT | | 1 | 538 (1)| 00:00:07 |
| 1 | SORT AGGREGATE | | 1 | | |
| 2 | TABLE ACCESS FULL| T1 | 126K| 538 (1)| 00:00:07 |
Note
- dynamic sampling used for this statement (level=2)
Statistics
9 recursive calls
0 db block gets
2006 consistent gets
2218 physical reads
0 redo size
424 bytes sent via SQL*Net to client
419 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
1 rows processed
SQL> /
COUNT(*)
135496
Execution Plan
Plan hash value: 3724264953
| Id | Operation | Name | Rows | Cost (%CPU)| Time |
| 0 | SELECT STATEMENT | | 1 | 538 (1)| 00:00:07 |
| 1 | SORT AGGREGATE | | 1 | | |
| 2 | TABLE ACCESS FULL| T1 | 126K| 538 (1)| 00:00:07 |
Note
- dynamic sampling used for this statement (level=2)
Statistics
0 recursive calls
0 db block gets
1940 consistent gets
1937 physical reads
0 redo size
424 bytes sent via SQL*Net to client
419 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
1 rows processedDB_KEEP_CACHE_SIZE=10M
SQL> connect / as sysdba
Connected.
SQL>
SQL> alter system set db_keep_cache_size=10M scope=both;
System altered.
SQL>
SQL> connect hr/hr@orcl
Connected.
SQL>
SQL> show parameter keep
NAME TYPE VALUE
buffer_pool_keep string
control_file_record_keep_time integer 7
db_keep_cache_size big integer 12M
SQL>
SQL> set autotrace on
SQL>
SQL> select count(*) from t1;
COUNT(*)
135496
Execution Plan
Plan hash value: 3724264953
| Id | Operation | Name | Rows | Cost (%CPU)| Time |
| 0 | SELECT STATEMENT | | 1 | 538 (1)| 00:00:07 |
| 1 | SORT AGGREGATE | | 1 | | |
| 2 | TABLE ACCESS FULL| T1 | 126K| 538 (1)| 00:00:07 |
Note
- dynamic sampling used for this statement (level=2)
Statistics
0 recursive calls
0 db block gets
1940 consistent gets
1937 physical reads
0 redo size
424 bytes sent via SQL*Net to client
419 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
1 rows processed
SQL> /
COUNT(*)
135496
Execution Plan
Plan hash value: 3724264953
| Id | Operation | Name | Rows | Cost (%CPU)| Time |
| 0 | SELECT STATEMENT | | 1 | 538 (1)| 00:00:07 |
| 1 | SORT AGGREGATE | | 1 | | |
| 2 | TABLE ACCESS FULL| T1 | 126K| 538 (1)| 00:00:07 |
Note
- dynamic sampling used for this statement (level=2)
Statistics
0 recursive calls
0 db block gets
1940 consistent gets
1937 physical reads
0 redo size
424 bytes sent via SQL*Net to client
419 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
1 rows processedDB_KEEP_CACHE_SIZE=20M
SQL> connect / as sysdba
Connected.
SQL>
SQL> alter system set db_keep_cache_size=20M scope=both;
System altered.
SQL>
SQL> connect hr/hr@orcl
Connected.
SQL>
SQL> show parameter keep
NAME TYPE VALUE
buffer_pool_keep string
control_file_record_keep_time integer 7
db_keep_cache_size big integer 20M
SQL> set autotrace on
SQL> select count(*) from t1;
COUNT(*)
135496
Execution Plan
Plan hash value: 3724264953
| Id | Operation | Name | Rows | Cost (%CPU)| Time |
| 0 | SELECT STATEMENT | | 1 | 538 (1)| 00:00:07 |
| 1 | SORT AGGREGATE | | 1 | | |
| 2 | TABLE ACCESS FULL| T1 | 126K| 538 (1)| 00:00:07 |
Note
- dynamic sampling used for this statement (level=2)
Statistics
0 recursive calls
0 db block gets
1943 consistent gets
1656 physical reads
0 redo size
424 bytes sent via SQL*Net to client
419 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
1 rows processed
SQL> /
COUNT(*)
135496
Execution Plan
Plan hash value: 3724264953
| Id | Operation | Name | Rows | Cost (%CPU)| Time |
| 0 | SELECT STATEMENT | | 1 | 538 (1)| 00:00:07 |
| 1 | SORT AGGREGATE | | 1 | | |
| 2 | TABLE ACCESS FULL| T1 | 126K| 538 (1)| 00:00:07 |
Note
- dynamic sampling used for this statement (level=2)
Statistics
0 recursive calls
0 db block gets
1943 consistent gets
0 physical reads
0 redo size
424 bytes sent via SQL*Net to client
419 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
1 rows processedOnly with 20M db_keep_cache_size I see no physical reads.
Does it mean that if the db_keep_cache_size < table size, there is no caching for that table ?
Or am I missing something ?
Rgds,
GokulHello Jonathan,
Many thanks for your response.
Here is the test I ran;
SQL> select buffer_pool,blocks from dba_tables where owner = 'HR' and table_name = 'T1';
BUFFER_ BLOCKS
KEEP 1977
SQL> select count(*) from v$bh where objd = (select data_object_id from dba_objects where owner = 'HR' and object_name = 'T1');
COUNT(*)
1939
SQL> show parameter db_keep_cache_size
NAME TYPE VALUE
db_keep_cache_size big integer 20M
SQL>
SQL> alter system set db_keep_cache_size = 5M scope=both;
System altered.
SQL> select count(*) from hr.t1;
COUNT(*)
135496
SQL> select count(*) from v$bh where objd = (select data_object_id from dba_objects where owner = 'HR' and object_name = 'T1');
COUNT(*)
992I think my inference is wrong and as you said I am indeed seeing the effect of tail end flushing the start of the table.
Rgds,
Gokul -
Cannot Load Index Into Keep Pool
I've sucessfully loaded my ctxsys.context index into the keep pool (works great) using the web page: http://www.oracle.com/technology/products/text/htdocs/mem_load.html .
I'm now trying the techniques to load a regular index (that joins to my text index).
I've executed:
alter index PROD_SVC_NDX storage (buffer_pool keep);
Then I tried the hint INDEX_FFS on the base table:
select /*+ INDEX_FFS ( INDEXDATA , PROD_SVC_NDX ) */ count(svc_code) FROM INDEXDATA ;
The optimizer shows a ffs in the algorithm:
INDEX FAST FULL SCAN| PROD_SVC_NDX |524K| 2047K|251 (2)| 0:00:04
WHEN I QUERY THE BUFFER CACHE, only 9% of the index is in the keep pool..
Owner............. Name...........................Type...........Cache....... %BLOCKS........POOL........BSize
SYSTEM.......PROD_SVC_NDX...........INDEX..........1,248.................9..............KEEP.........8,192.
How do you load regular index blocks into keep pool?
What would be the best Oracle forum for this question?
JoeI think the optimizer will always use a full scan for such a query, regardless of hints. What you need to do is fetch all rows individually. This can be done in a PL/SQL block with an outer loop which fetches all the indexed values, and an inner select that performs an indexed lookup with each value. For example:
Given a table with a primary key index:
create table foo (pk number primary key, bar varchar2);
Populated:
insert into foo values (1, 'aa');
insert into foo values (2, 'ab');
insert into foo values (3, 'ac');
We could do this:
declare
v_bar varchar2(2);
begin
for q in (select pk from foo) loop
select bar into v_bar from foo where pk = q.pk;
end loop;
end;
It may well not be necessary to fetch every row - you should experiment and see whether maybe fetching every 10th row - or even every 100th row - is sufficient to fetch all index blocks into the SGA.
- Roger -
Identifying candidates for KEEP pool
Hi,
recently a DBA I know was asked to make a list of candidates for KEEP pool in buffer cache. He's not familiar with the application. Is there an automated way to do this, or is this something that only someone familiar with the business logic can do manually?
I googled a bit on the subject, but haven't found much except for Mr. Burleson's scripts (who has a history of giving idiotic advice so I don't trust him) or rather general theoretical discussions (like the thread on AskTom). I'm interested in someone who has done it (or learned why this cannot be done) himself sharing his experience.
Thanks in advance!
Best regards,
Nikolayrp0428 wrote:
Jonathan - none of those referenced articles seem to have a recommendation as to what is appropriate for the KEEP cache. There is a mention of a large frequently used object.eey
I thought that small lookup tables that were frequently used were the best candidates for the KEEP pool. Is this not the case?
That suggestion was a consequence of a bug with the touch count algorithm that has been fixed. If blocks were read by TABLESCAN then their touch count was never incremented, so they would always fall off the end of the buffer cache LRU fairly promptly, hence putting them into a KEEP cache would solve the problem. However if the table was being used as a lookup table - with primary key access - the problem didn't arise and if it were a popular lookup then the normal LRU mechanism would keep it cached.
Can you provide any links to your books or articles that have a recommendation on how to select objects for the keep pool?I don't think there are any - I think it's only possible to make a highly generic statement and then think about individual cases and watch out for unexpected side effects. (That's what my comments above, and the articles, are about).
From my perspective - every time I've tried to beat the LRU by creating a KEEP pool I haven't managed to do any better than the default LRU and all I've managed to do is limit the flexibility of the system by carving a load of memory off the main cache.
I have used the KEEP pool successfully - but not for "KEEP"ing; I've used it simply to cache LOBs in a small part of the cache. I've also had a couple of successes with the RECYCLE pool as a damaged limitation mechanism.
Regards
Jonathan Lewis
http://jonathanlewis.wordpress.com
Author: <b><em>Oracle Core</em></b> -
My iMac keeps crashing and I have no idea why
My iMac keeps crashing, and I don't know why. It started yesterday and for some reason just fails. I get an message saying it has shut down due to an error, and this is then the details of the error report it produces.
Can anyone please help and tell me what is wrong?
Huge thanks.
Hardware Overview:
Model Name: iMac
Model Identifier: iMac9,1
Processor Name: Intel Core 2 Duo
Processor Speed: 2.93 GHz
Number of Processors: 1
Total Number of Cores: 2
L2 Cache: 6 MB
Memory: 8 GB
Bus Speed: 1.07 GHz
Boot ROM Version: IM91.008D.B08
SMC Version (system): 1.45f0
Serial Number (system): VM******0TM
Software OS X 10.9 (13A603)
Error report as follows:
Anonymous UUID: 954FEFB3-53EC-843A-0739-711F6D804866
Sun Nov 24 16:20:47 2013
panic(cpu 0 caller 0xffffff801dadc19e): Kernel trap at 0xffffff7f9fdceef1, type 14=page fault, registers:
CR0: 0x000000008001003b, CR2: 0xffffff7f9fdceef1, CR3: 0x00000000012fe000, CR4: 0x0000000000000660
RAX: 0x0000000000000000, RBX: 0x0000000000000006, RCX: 0x0000000003000000, RDX: 0xffffff8034a5d960
RSP: 0xffffff810e0a3740, RBP: 0xffffff810e0a37a0, RSI: 0xffffff81004a1068, RDI: 0xffffff8034a5d960
R8: 0xffffff801e0d2b30, R9: 0xffffff81004a1068, R10: 0xffffff810e0a34b0, R11: 0x0000000000000206
R12: 0x0000000000000020, R13: 0xffffff810e0a3ab4, R14: 0xffffff8030a0ba08, R15: 0x0000000000000001
RFL: 0x0000000000010282, RIP: 0xffffff7f9fdceef1, CS: 0x0000000000000008, SS: 0x0000000000000010
Fault CR2: 0xffffff7f9fdceef1, Error code: 0x0000000000000010, Fault CPU: 0x0
Backtrace (CPU 0), Frame : Return Address
0xffffff810e0a33d0 : 0xffffff801da22f69
0xffffff810e0a3450 : 0xffffff801dadc19e
0xffffff810e0a3620 : 0xffffff801daf3606
0xffffff810e0a3640 : 0xffffff7f9fdceef1
0xffffff810e0a37a0 : 0xffffff7f9fdcfda2
0xffffff810e0a39b0 : 0xffffff7f9fde0077
0xffffff810e0a3a30 : 0xffffff801ddb3671
0xffffff810e0a3a90 : 0xffffff801dbdf80d
0xffffff810e0a3ae0 : 0xffffff801dbf4360
0xffffff810e0a3b80 : 0xffffff801dbe5f15
0xffffff810e0a3c30 : 0xffffff801dbe67d2
0xffffff810e0a3f50 : 0xffffff801de3de23
0xffffff810e0a3fb0 : 0xffffff801daf3e06
BSD process name corresponding to current thread: mds_stores
Mac OS version:
13A603
Kernel version:
Darwin Kernel Version 13.0.0: Thu Sep 19 22:22:27 PDT 2013; root:xnu-2422.1.72~6/RELEASE_X86_64
Kernel UUID: 1D9369E3-D0A5-31B6-8D16-BFFBBB390393
Kernel slide: 0x000000001d800000
Kernel text base: 0xffffff801da00000
System model name: iMac9,1 (Mac-F2218FA9)
System uptime in nanoseconds: 705898990026
last loaded kext at 511933163642: com.apple.filesystems.smbfs 2.0.0 (addr 0xffffff7f9e370000, size 335872)
last unloaded kext at 705842715414: com.trendmicro.kext.filehook 1.5.0 (addr 0xffffff7f9fdce000, size 98304)
loaded kexts:
com.trendmicro.kext.KERedirect 1.0.0
com.seagate.driver.PowSecLeafDriver_10_5 5.1.1
com.seagate.driver.PowSecDriverCore 5.1.1
com.apple.filesystems.smbfs 2.0.0
com.apple.filesystems.msdosfs 1.9
com.apple.filesystems.cddafs 2.6.0
com.apple.driver.AudioAUUC 1.60
com.apple.driver.AppleBluetoothMultitouch 80.14
com.apple.driver.AppleHWSensor 1.9.5d0
com.apple.driver.AGPM 100.14.11
com.apple.driver.AppleTyMCEDriver 1.0.2d2
com.apple.filesystems.autofs 3.0
com.apple.iokit.IOBluetoothSerialManager 4.2.0f6
com.apple.driver.AppleHDAHardwareConfigDriver 2.5.2fc2
com.apple.driver.AppleMikeyHIDDriver 124
com.apple.driver.AppleHDA 2.5.2fc2
com.apple.iokit.IOUserEthernet 1.0.0d1
com.apple.Dont_Steal_Mac_OS_X 7.0.0
com.apple.driver.AppleHWAccess 1
com.apple.iokit.IOBluetoothUSBDFU 4.2.0f6
com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport 4.2.0f6
com.apple.driver.ACPI_SMC_PlatformPlugin 1.0.0
com.apple.driver.AppleMikeyDriver 2.5.2fc2
com.apple.driver.AppleLPC 1.7.0
com.apple.driver.AppleMuxControl 3.4.12
com.apple.driver.AppleBacklight 170.3.5
com.apple.GeForceTesla 8.1.8
com.apple.driver.AppleUpstreamUserClient 3.5.13
com.apple.driver.AppleMCCSControl 1.1.12
com.apple.nvidia.NVDAStartup 8.1.8
com.apple.driver.iPodSBCDriver 1.7.0
com.apple.driver.AppleIRController 325.7
com.apple.driver.AppleFileSystemDriver 3.0.1
com.apple.AppleFSCompression.AppleFSCompressionTypeDataless 1.0.0d1
com.apple.AppleFSCompression.AppleFSCompressionTypeZlib 1.0.0d1
com.apple.BootCache 35
com.apple.iokit.SCSITaskUserClient 3.6.0
com.apple.driver.XsanFilter 404
com.apple.iokit.IOAHCIBlockStorage 2.4.0
com.apple.nvenet 2.0.21
com.apple.driver.AppleFWOHCI 4.9.9
com.apple.driver.AirPort.Brcm4331 700.20.22
com.apple.driver.AppleUSBHub 650.4.4
com.apple.driver.AppleUSBEHCI 650.4.1
com.apple.driver.AppleAHCIPort 2.9.5
com.apple.driver.AppleUSBOHCI 650.4.1
com.apple.driver.AppleRTC 2.0
com.apple.driver.AppleHPET 1.8
com.apple.driver.AppleACPIButtons 2.0
com.apple.driver.AppleSMBIOS 2.0
com.apple.driver.AppleACPIEC 2.0
com.apple.driver.AppleAPIC 1.7
com.apple.driver.AppleIntelCPUPowerManagementClient 216.0.0
com.apple.nke.applicationfirewall 153
com.apple.security.quarantine 3
com.apple.driver.AppleIntelCPUPowerManagement 216.0.0
com.apple.driver.IOBluetoothHIDDriver 4.2.0f6
com.apple.driver.AppleMultitouchDriver 245.13
com.apple.AppleGraphicsDeviceControl 3.4.12
com.apple.kext.triggers 1.0
com.apple.iokit.IOSerialFamily 10.0.7
com.apple.driver.DspFuncLib 2.5.2fc2
com.apple.vecLib.kext 1.0.0
com.apple.iokit.IOAudioFamily 1.9.4fc11
com.apple.kext.OSvKernDSPLib 1.14
com.apple.iokit.IOSurface 91
com.apple.iokit.IOBluetoothFamily 4.2.0f6
com.apple.iokit.IOBluetoothHostControllerUSBTransport 4.2.0f6
com.apple.iokit.IOFireWireIP 2.2.5
com.apple.driver.AppleHDAController 2.5.2fc2
com.apple.iokit.IOHDAFamily 2.5.2fc2
com.apple.driver.AppleSMC 3.1.6d1
com.apple.driver.IOPlatformPluginLegacy 1.0.0
com.apple.driver.AppleSMBusPCI 1.0.12d1
com.apple.driver.IOPlatformPluginFamily 5.5.1d27
com.apple.driver.AppleGraphicsControl 3.4.12
com.apple.driver.AppleBacklightExpert 1.0.4
com.apple.nvidia.classic.NVDANV50HalTesla 8.1.8
com.apple.driver.AppleSMBusController 1.0.11d1
com.apple.nvidia.classic.NVDAResmanTesla 8.1.8
com.apple.iokit.IONDRVSupport 2.3.6
com.apple.iokit.IOGraphicsFamily 2.3.6
com.apple.iokit.IOUSBMassStorageClass 3.6.0
com.apple.driver.AppleUSBHIDKeyboard 170.15
com.apple.driver.AppleHIDKeyboard 170.15
com.apple.iokit.IOUSBHIDDriver 650.4.4
com.apple.driver.AppleUSBMergeNub 650.4.0
com.apple.driver.AppleUSBComposite 650.4.0
com.apple.iokit.IOSCSIMultimediaCommandsDevice 3.6.0
com.apple.iokit.IOBDStorageFamily 1.7
com.apple.iokit.IODVDStorageFamily 1.7.1
com.apple.iokit.IOCDStorageFamily 1.7.1
com.apple.iokit.IOAHCISerialATAPI 2.6.0
com.apple.iokit.IOFireWireSBP2 4.2.5
com.apple.iokit.IOSCSIBlockCommandsDevice 3.6.0
com.apple.iokit.IOSCSIArchitectureModelFamily 3.6.0
com.apple.iokit.IOFireWireFamily 4.5.5
com.apple.iokit.IO80211Family 600.34
com.apple.iokit.IONetworkingFamily 3.2
com.apple.iokit.IOUSBUserClient 650.4.4
com.apple.driver.AppleEFINVRAM 2.0
com.apple.driver.NVSMU 2.2.9
com.apple.driver.AppleEFIRuntime 2.0
com.apple.iokit.IOAHCIFamily 2.6.0
com.apple.iokit.IOUSBFamily 650.4.4
com.apple.iokit.IOHIDFamily 2.0.0
com.apple.iokit.IOSMBusFamily 1.1
com.apple.security.sandbox 278.10
com.apple.kext.AppleMatch 1.0.0d1
com.apple.security.TMSafetyNet 7
com.apple.driver.AppleKeyStore 2
com.apple.driver.DiskImages 371.1
com.apple.iokit.IOStorageFamily 1.9
com.apple.iokit.IOReportFamily 21
com.apple.driver.AppleFDEKeyStore 28.30
com.apple.driver.AppleACPIPlatform 2.0
com.apple.iokit.IOPCIFamily 2.8
com.apple.iokit.IOACPIFamily 1.4
com.apple.kec.pthread 1
com.apple.kec.corecrypto 1.0
Model: iMac9,1, BootROM IM91.008D.B08, 2 processors, Intel Core 2 Duo, 2.93 GHz, 8 GB, SMC 1.45f0
Graphics: NVIDIA GeForce GT 130, NVIDIA GeForce GT 130, PCIe, 512 MB
Memory Module: BANK 0/DIMM0, 4 GB, DDR3, 1333 MHz, 0x8783, 0x53524433344731333333534D414300000000
Memory Module: BANK 1/DIMM0, 4 GB, DDR3, 1333 MHz, 0x8783, 0x53524433344731333333534D414300000000
AirPort: spairport_wireless_card_type_airport_extreme (0x14E4, 0x8E), Broadcom BCM43xx 1.0 (5.106.98.100.22)
Bluetooth: Version 4.2.0f6 12982, 3 services, 23 devices, 1 incoming serial ports
Network Service: Ethernet, Ethernet, en0
Serial ATA Device: ST31000342ASQ, 1 TB
Serial ATA Device: OPTIARC DVD RW AD-5670S, 295 MB
USB Device: Built-in iSight
USB Device: Keyboard Hub
USB Device: Apple Keyboard
USB Device: IR Receiver
USB Device: BRCM2046 Hub
USB Device: Bluetooth USB Host Controller
Thunderbolt Bus:
<Edited by Host>And what is wrong with Trend Micro Titanium as a package?
1. This comment applies to malicious software ("malware") that's installed unwittingly by the victim of a network attack, and what you should and should not do to protect yourself from that threat. It does not apply to software, such as keystroke loggers, that may be installed deliberately by an intruder who has hands-on access to the victim's computer. That threat is in a different category, and there's no easy way to defend against it. If you have reason to suspect that you're the target of such an attack, you need expert help.
If you find this comment too long or too technical, read only sections 5, 6, and 10.
OS X now implements three layers of built-in protection specifically against malware, not counting runtime protections such as execute disable, sandboxing, system library randomization, and address space layout randomization that may also guard against other kinds of exploits.
2. All versions of OS X since 10.6.7 have been able to detect known Mac malware in downloaded files, and to block insecure web plugins. This feature is transparent to the user, but internally Apple calls it "XProtect." The malware recognition database is automatically checked for updates once a day; however, you shouldn't rely on it, because the attackers are always at least a day ahead of the defenders.
The following caveats apply to XProtect:
It can be bypassed by some third-party networking software, such as BitTorrent clients and Java applets.
It only applies to software downloaded from the network. Software installed from a CD or other media is not checked.
As new versions of OS X are released, it's not clear whether Apple will indefinitely continue to maintain the XProtect database of older versions such as 10.6. The security of obsolete system versions may eventually be degraded. Security updates to the code of obsolete systems will stop being released at some point, and that may leave them open to other kinds of attack besides malware.
3. Starting with OS X 10.7.5, there has been a second layer of built-in malware protection, designated "Gatekeeper" by Apple. By default, applications and Installer packages downloaded from the network will only run if they're digitally signed by a developer with a certificate issued by Apple. Software certified in this way hasn't necessarily been tested by Apple, but you can be reasonably sure that it hasn't been modified by anyone other than the developer. His identity is known to Apple, so he could be held legally responsible if he distributed malware. That may not mean much if the developer lives in a country with a weak legal system (see below.)
Gatekeeper doesn't depend on a database of known malware. It has, however, the same limitations as XProtect, and in addition the following:
It can easily be disabled or overridden by the user.
A malware attacker could get control of a code-signing certificate under false pretenses, or could simply ignore the consequences of distributing codesigned malware.
An App Store developer could find a way to bypass Apple's oversight, or the oversight could fail due to human error.
For the reasons given above, App Store products, and other applications recognized by Gatekeeper as signed, are safer than others, but they can't be considered absolutely safe. "Sandboxed" applications may prompt for access to private data, such as your contacts, or for access to the network. Think before granting that access. OS X security is based on user input. Never click through any request for authorization without thinking.
4. Starting with OS X 10.8.3, a third layer of protection has been added: a "Malware Removal Tool" (MRT). MRT runs automatically in the background when you update the OS. It checks for, and removes, malware that may have evaded the other protections via a Java exploit (see below.) MRT also runs when you install or update the Apple-supplied Java runtime (but not the Oracle runtime.) Like XProtect, MRT is effective against known threats, but not against unknown ones. It notifies you if it finds malware, but otherwise there's no user interface to MRT.
5. The built-in security features of OS X reduce the risk of malware attack, but they're not absolute protection. The first and best line of defense is always going to be your own intelligence. With the possible exception of Java exploits, all known malware circulating on the Internet that affects a fully-updated installation of OS X 10.6 or later takes the form of so-called "trojan horses," which can only have an effect if the victim is duped into running them. The threat therefore amounts to a battle of wits between you and the malware attacker. If you're smarter than he thinks you are, you'll win.
That means, in practice, that you never use software that comes from an untrustworthy source, or that does something inherently untrustworthy. How do you know what is trustworthy?
Any website that prompts you to install a “codec,” “plug-in,” "player," "extractor," or “certificate” that comes from that same site, or an unknown one, is untrustworthy.
A web operator who tells you that you have a “virus,” or that anything else is wrong with your computer, or that you have won a prize in a contest you never entered, is trying to commit a crime with you as the victim. (Some reputable websites did legitimately warn visitors who were infected with the "DNSChanger" malware. That exception to this rule no longer applies.)
Pirated copies or "cracks" of commercial software, no matter where they come from, are unsafe.
Software of any kind downloaded from a BitTorrent or from a Usenet binary newsgroup is unsafe.
Software that purports to help you do something that's illegal or that infringes copyright, such as saving streamed audio or video for reuse without permission, is unsafe. All YouTube "downloaders" are in this category, though not all are necessarily harmful.
Software with a corporate brand, such as Adobe Flash Player, must be downloaded directly from the developer’s website. If it comes from any other source, it's unsafe.
Even signed applications, no matter what the source, should not be trusted if they do something unexpected, such as asking for permission to access your contacts, your location, or the Internet for no obvious reason.
6. Java on the Web (not to be confused with JavaScript, to which it's not related, despite the similarity of the names) is a weak point in the security of any system. Java is, among other things, a platform for running complex applications in a web page, on the client. That was always a bad idea, and Java's developers have proven themselves incapable of implementing it without also creating a portal for malware to enter. Past Java exploits are the closest thing there has ever been to a Windows-style virus affecting OS X. Merely loading a page with malicious Java content could be harmful.
Fortunately, client-side Java on the Web is obsolete and mostly extinct. Only a few outmoded sites still use it. Try to hasten the process of extinction by avoiding those sites, if you have a choice. Forget about playing games or other non-essential uses of Java.
Java is not included in OS X 10.7 and later. Discrete Java installers are distributed by Apple and by Oracle (the developer of Java.) Don't use either one unless you need it. Most people don't. If Java is installed, disable it — not JavaScript — in your browsers.
Regardless of version, experience has shown that Java on the Web can't be trusted. If you must use a Java applet for a task on a specific site, enable Java only for that site in Safari. Never enable Java for a public website that carries third-party advertising. Use it only on well-known, login-protected, secure websites without ads. In Safari 6 or later, you'll see a lock icon in the address bar with the abbreviation "https" when visiting a secure site.
Follow the above guidelines, and you’ll be as safe from malware as you can practically be. The rest of this comment concerns what you should not do to protect yourself from malware.
7. Never install any commercial "anti-virus" or "Internet security" products for the Mac, as they all do more harm than good, if they do any good at all. Any database of known threats is always going to be out of date. Most of the danger is from unknown threats. If you need to be able to detect Windows malware in your files, use one of the free anti-virus products in the Mac App Store — nothing else.
Why shouldn't you use commercial "anti-virus" products?
Their design is predicated on the nonexistent threat that malware may be injected at any time, anywhere in the file system. Malware is downloaded from the network; it doesn't materialize from nowhere.
In order to meet that nonexistent threat, the software modifies or duplicates low-level functions of the operating system, which is a waste of resources and a common cause of instability, bugs, and poor performance.
To recognize malware, the software depends on a database of known threats, which is always at least a day out of date. Most of the real-world danger of malware attack comes from highly targeted "zero-day" exploits that are not yet recognized.
By modifying the operating system, the software itself may create weaknesses that could be exploited by malware attackers.
8. An anti-malware product from the App Store, such as "ClamXav," doesn't have these drawbacks. That doesn't mean it's entirely safe. It may report email messages that have "phishing" links in the body, or Windows malware in attachments, as infected files, and offer to delete or move them. Doing so will corrupt the Mail database. The messages should be deleted from within the Mail application.
An anti-virus app is not needed, and should not be relied upon, for protection against OS X malware. It's useful only for detecting Windows malware. Windows malware can't harm you directly (unless, of course, you use Windows.) Just don't pass it on to anyone else.
A Windows malware attachment in email is usually easy to recognize. The file name will often be targeted at people who aren't very bright; for example:
♥♥♥♥♥♥♥♥♥♥♥♥♥♥!!!!!!!H0TBABEZ4U!!!!!!!.AVI♥♥♥♥♥♥♥♥♥♥♥♥♥♥.exe
Anti-virus software may be able to tell you which particular virus or trojan it is, but do you care? In practice, there's seldom a reason to use the software unless a network administrator requires you to do it.
The ClamXav developer won't try to "upsell" you to a paid version of the product. Other developers may do that. Don't be upsold. For one thing, you should not pay to protect Windows users from the consequences of their choice of computing platform. For another, a paid upgrade from a free app will probably have the disadvantages mentioned in section 7.
9. It seems to be a common belief that the built-in Application Firewall acts as a barrier to infection, or prevents malware from functioning. It does neither. It blocks inbound connections to certain network services you're running, such as file sharing. It's disabled by default and you should leave it that way if you're behind a router on a private home or office network. Activate it only when you're on an untrusted network, for instance a public Wi-Fi hotspot, where you don't want to provide services. Disable any services you don't use in the Sharing preference pane. All are disabled by default.
10. As a Mac user you don't have to live in fear that your computer is going to be infected every time you install an application, read email, or visit a web page. But neither should you have the false idea that you will always be safe, no matter what you do. The greatest harm done by security software is precisely its selling point: it makes people feel safe. They may then feel safe enough to take risks from which the software doesn't protect them. Nothing can lessen the need for safe computing practices. -
Listener EA2: database connection pool and connection revalidation
Hi all,
As one can expect from early adopter release there could be some bugs but I can't find any references in forum to my situation:
* My 11g XE database and listener are starting as windows services when server boots operating system (Windows Server 2003 R2).
* I configured my web server (unsupported Jetty 9.0.0.M1) to start as windows service when operating system starts.
* Apex Listener 2.0.0.268.17.05 configured to connect with XE using JDBC thin driver with default settings (initial pool size 3, max statements 10, min connections 1, max connections 10, inactivity timeout 1800, abandoned connection timeout 900)
* Because web server starts a bit faster than Oracle database when apex connects first time it gets "ORA-12528, TNS:listener: all appropriate instances are blocking new connections" (could be that database still starting but already registered service with listener)
* From listener.log file I can see that all further connections made from Apex listener succeeds
* When I try to open any apex page with browser I am getting 404 error and apex listener logs error (*time is 2 days after system startup*):
2012-11-30 3:56:02 PM oracle.dbtools.common.config.db.DatabaseConfig badConfiguration
SEVERE: The pool named: apex is not correctly configured, error: Listener refused the connection with the following error:
ORA-12528, TNS:listener: all appropriate instances are blocking new connections
ConnectionPoolException [error=BAD_CONFIGURATION]
at oracle.dbtools.common.jdbc.ConnectionPoolException.badConfiguration(ConnectionPoolException.java:62)
at oracle.dbtools.common.config.db.DatabaseConfig.badConfiguration(DatabaseConfig.java:146)
at oracle.dbtools.common.config.db.DatabaseConfig.createPool(DatabaseConfig.java:168)
at oracle.dbtools.common.config.db.DatabaseConfig.getConnection(DatabaseConfig.java:68)
at oracle.dbtools.common.jdbc.ora.OraPrincipal.connection(OraPrincipal.java:25)
at oracle.dbtools.apex.ModApexContext.getConnection(ModApexContext.java:320)
at oracle.dbtools.apex.Procedure.getProcedure(Procedure.java:166)
at oracle.dbtools.apex.OWA.validateProcedure(OWA.java:384)
at oracle.dbtools.apex.security.Security.isValidRequest(Security.java:171)
at oracle.dbtools.apex.ModApex.validateRequest(ModApex.java:233)
at oracle.dbtools.apex.ModApex.doGet(ModApex.java:79)
at oracle.dbtools.apex.ModApex.service(ModApex.java:263)
at oracle.dbtools.rt.web.HttpEndpointBase.modApex(HttpEndpointBase.java:288)
at oracle.dbtools.rt.web.HttpEndpointBase.service(HttpEndpointBase.java:127)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:665)
<... Jetty web server stack ...>
at java.lang.Thread.run(Unknown Source)
2012-11-30 3:56:02 PM oracle.dbtools.rt.web.HttpEndpointBase modApex
* Oracle listener log for same time (no errors here):
30-NOV-2012 15:56:01 * (CONNECT_DATA=(CID=(PROGRAM=JDBC Thin Client)(HOST=__jdbc__)(USER=SYSTEM))(SERVICE_NAME=xe)(CID=(PROGRAM=JDBC Thin Client)(HOST=__jdbc__)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1078)) * establish * xe * 0
30-NOV-2012 15:56:01 * (CONNECT_DATA=(CID=(PROGRAM=JDBC Thin Client)(HOST=__jdbc__)(USER=SYSTEM))(SERVICE_NAME=xe)(CID=(PROGRAM=JDBC Thin Client)(HOST=__jdbc__)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1079)) * establish * xe * 0
30-NOV-2012 15:56:01 * (CONNECT_DATA=(CID=(PROGRAM=JDBC Thin Client)(HOST=__jdbc__)(USER=SYSTEM))(SERVICE_NAME=xe)(CID=(PROGRAM=JDBC Thin Client)(HOST=__jdbc__)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1080)) * establish * xe * 0
30-NOV-2012 15:56:01 * (CONNECT_DATA=(CID=(PROGRAM=JDBC Thin Client)(HOST=__jdbc__)(USER=SYSTEM))(SERVICE_NAME=xe)(CID=(PROGRAM=JDBC Thin Client)(HOST=__jdbc__)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1081)) * establish * xe * 0
* For some reason apex listener keeps first connection status and won't try to establish new connection if first attempt finished with ORA-12528
* The same scenario is valid when at time of web server start oracle database/listener is not available - even if database and listener starts and apex successfully establishes further connections all apex pages gets 404 error
* If I restart web server windows service (while oracle db and listener still running) browser opens apex pages without errors and apex listener does not log any errors
* I know that I can avoid this error delaying start of web server windows service but it would be nice to have production release 2.x without such bugsHi,
Is there any way to use the connection pool or Datasource while connecting to database?If I am using a stateless sesssion bean and using a Data Access layer which just creates a database session to write the persistence toplink objects how I can make use of application server connection pool?Hi Vinod,
Yes, TopLink allows you to use the app server's connection pooling and transaction services. Chapter 2 of the Oracle9iAS TopLink Foundation Library Guide provides details as do the TopLink examples. The easiest way to set this up is by using the sessions.xml file. The sample XML below is from the file <toplink903>\examples\ias\examples\ejb\sessionbean\sessions.xml. Here we are adding the datasource defined in OC4J and specifying that we are using the OC4J transaction controller also.
<login>
<user-name>sa</user-name>
<password></password>
<datasource>java:comp/env/jdbc/ejbJTSDataSource</datasource>
<uses-external-transaction-controller>true</uses-external-transaction-controller>
<uses-external-connection-pool>true</uses-external-connection-pool>
</login>
<external-transaction-controller-class>oracle.toplink.jts.oracle9i.Oracle9iJTSExternalTransactionController</external-transaction-controller-class>
When using this approach you need to change your TopLink code slightly in the EJB methods:
a. Acquire the ACTIVE unit of work from the server
session (again, see the EmployeeSessionEJB code
example) with something like:
UnitOfWork uow = clientSession.getActiveUnitOfWork();
b. Calls to uow.commit() can be ommitted or commented out
because the EJB will handle this. Note that of course
the methods you create in the EJB that are using this
approach must have TX Required (default).
Hope this helps.
Pete -
Can you remove the "View All RSS Articles" and Counter in Bookmarks Bar?
Hi There. I have a folder/drop down menus called "MyMix" in the Bookmarks Bar with several subfolders of pages I like to visit regularly. It's a silly thing but I get tired of the climbing counter of RSS articles in parentheses that sits next to it. Is there anyway to remove that functionality? I have a few other drop down menus that don't have the same problem, so not sure why this one does it. I've tried copying the folder and taking out each individual subfolder but it still keeps the RSS counter and "View All RSS Articles" link in there.
Any suggestions?
Thanks!Awesome, thank you. I should've checked preferences myself. Duh.
Still curious as to why it chose that folder instead of the other one's I have to display the RSS updates but I guess that will remain a mystery.
Thanks for your help!
CH -
Counter issues with 2D raster scan and count acquisitio​n
I am building a confocal laser scanning microscope and am currently attempting to develop labview controls for it. I have a fast steering mirror (FSM) which takes analog voltage inputs to control it's x and y angle and I have an avalanche photo diode (APD) which sends a TTL pulse for each photon detection event. For now, I am trying to create a program which will send out two analog signals to create a 2d raster scan with the FSM and count the number of pulses from the APD per pixel. I have been trying to make the program from https://decibel.ni.com/content/docs/DOC-5779 work, but I keep running into counter issues. I am using a generated pulse train from the other counter on my device (NI 6011E) as the period.term input, but I get a "Two consecutive input signals occurred without a counter timebase edge" error if I increase the frequency of the pulse train too high. Unfortunately, the number of pixels I can acquire seems to be limited to twice the frequency of the counter, so I cannot just use a lower frequency train. I believe that the error is occurring because the count rate from the APD is very low and that there are simply no photons hitting the detector in the time period between pulses.This is not a problem, but I would like to know how to simply record a 0 and continue with the scan, rather than have the entire program exit with an error.
Alternatively, if this does not seem like the correct way to accomplish what I am trying to do, I am open to new directions.So simply ignoring the error did not work, because the DAQmx subroutine stops collection when the error is detected. I think I may need to come up with a different approach to synchronize the counting of TTL pulses with an analog output. Attached below is the code I have been working with.
Attachments:
Raster_2DOutput_wCounter_82.vi 45 KB -
If I specify db_keep_pool_size as 200 M and I am presently keeping 150 M of tables and indexes in keep pool. What happens when the size of these segments goes beyond 200 M? Does the query throw an error?
Thank YouNo.
You simply start ageing out to disk blocks which, by definition, you had hoped to be keeping in memory. Therefore, your performance will suffer, because subsequent reads will be from disk, not memory.
As a side-effect, the hit ratio on the keep pool will fall. So a keep pool hit ratio that is not very close to 100%, is a pretty sure-fire indication that the keep pool is smaller than the tables you've asked to store in it. -
PUT large table in the keep pool?
I would like to buffer a table in the keep pool:
The table I would like to put in the keep pool is 200Mb (which is really large). The corresponding indices have a size of 70MB.
Actually, many blocks of table are stored in the default pool. But some blocks of that huge table are not accessed for a long time. Thus they are purged from the default pool due to the LRU strategy (when blocks of other tables are queried and buffered)
If the table (which is supposed to be in the keep pool) is queried again, the queried blocks have to be reloaded plus the corresponding index.
All these reloads make up 600Mb in three hours, which could be saved, if the table and its indices are stored in the keep pool.
The table itself has only one key field :-(
The table has many many indices, because the table is accessed by many different fields :-(
The table is changed by updates and insert 400 times in 3 hours :-( ---->indices are updated :-(
I can not split that table :-(
I can not increase the size of the cache :-(
I dont know if response times (of queries targeting that table) would decrease significantly if the table is stored in the keep pool.
What do you think? There must be a significant change in terms of the respnse time ??!?!Hi abapers,
the error is here:
DATA: lr_error TYPE REF TO cx_address_bcs.
DATA: lv_message TYPE string.
loop at tab_destmail_f into wa_destmail_f. "or assigning fs
TRY.
recipient = cl_cam_address_bcs=>create_internet_address( wa_destmail_f-smtp_addr ).
>>>>>>>> send_request->add_recipient( recipient ).
CATCH cx_address_bcs INTO lr_error.
lv_message = lr_error->get_text( ).
ENDTRY.
endloop.
The messages are:
Zugriff über 'NULL' Objektreferenz nicht möglich.
Access via 'NULL' object reference not possible.
Err.tmpo.ejec. OBJECTS_OBJREF_NOT_ASSIGNED
Excep. CX_SY_REF_IS_INITIAL
Fecha y hora 21.01.2010 19:00:55
The information of lv_message is:
{O:322*CLASS=CX_ADDRESS_BCS}
Excepción CX_ADDRESS_BCS ocurrida (programa: CL_CAM_ADDRESS_BCS============CP, include CL_CAM_ADDRESS_BCS============CM01W, línea: 45)
I don't find the solution, any saving code?
This is very important to me. Thanks a lot for your help! -
Table caching in keep pool!!
Hello,
I have read several threads on the net that we rarely need to cache any table (99.9999....% people don't need it). We have a table which is frequently used during our service flow, the size of the table is 981M(8m rows) approx and memory_target is set to 22G.
We have also requests to cache most of the frequently accessed tables in cache some are small and some are moderate in size like the above. I myself not convinced to fulfill this request and i also don't have strong logical explanation that caching will become a bottleneck in the future.
Is it explainable that keeping the said table in cache requires much more space in the cache, if not, it will eventually aged out?? For example, in case of updates?
Please guide me in this regard.
Regards,
Raja.There is a dependency on what else is in the pool. Presumably a non-default pool would be smaller than a default pool, and a misunderstanding of block copy mechanisms (which of course vary by version) could lead to undersizing the pool, kicking off needed blocks unnecessarily, to where it would have been better to just leave everything in the default pool and let Larry sort it out.
Of course full scans into the PGA, what is small?, direct I/O and a gazillion other things mean it depends, depends, depends. Not to mention [url http://jonathanlewis.wordpress.com/2010/03/20/not-keeping/]large objects assigned to the KEEP pool will always do buffered IO and never direct IO (regardless of the size of the object scan) if bugs don't stop the object from going in in the first place.
Maybe you are looking for
-
Why rollback is not working....
it's 10g as far as I know, dbms_scheduler.create_job is not a DDL. So why this is saving insert ... SQL*Plus: Release 10.2.0.3.0 - Production on Sat May 10 20:58:31 2008 Copyright (c) 1982, 2006, Oracle. All Rights Reserved. Connected to: Oracle Dat
-
Hi, I used to have internetconnection with wifi but all of a sudden not anymore. Other computers here still have it. Somebody else has used my laptop, but he claims not having changed anything. So my question is, how can I reset the original settings
-
I'm trying to write a pivot (by day) query that includes a count of events that happen based on a field not being null. In the same query I'd like to include the total events (null or not) so that I can get a ratio. i.e. this is what I have, how can
-
Specific material form specific vendor
Dear Experts, As per my one plant ( Herbal Plant ) our requirment is following; A single material like abc will be provided by only two or three vendor 1/2/3, as per our auditor No po should be create expect these vendor.How I restrict please explai
-
Why does the Video do this? Why is iMovie doing this all of a sudden
http://www.esnips.com/doc/407a5579-501f-44a4-ad41-789684ea36ca/GIf-Remastered-Co medy-2 WAtch it. near the beginning, the video just freezes and my vid has a lot more. Why is it doing this in imovie and how can I fix this? I used mov and mp4 and they