Determine cffunction access method?
I have a .cfc which can be called either locally or remotely. When I call it locally, there's no need to determine whether the function should be allowed to run since all local calls can be trusted. However, when called as a web service, I would like to require two paramaters (username and password) so I can determine whether the function can be permitted to execute, or if I should return an "Access denied" message. (The verifyClient attribute of the cffunction tag is not what I'm after. I need to verify the username and password against a collection of account credentials.)
What I really need (in pseudo-code) is something like:
IF (requested_as_a_web_service = "true")
{check username and password against account credentials}
ELSE {stop processing and return an "Access denied" message}
So, is there a way to determine the access method?
David
But returning the CFC path doesn't help me determine whether the calling page is local or remote. Now if the CFC could reliably conclude the path of the calling page, that'd help, but I don't see any way that's possible.
Yeah, but think about it... if the path is the CFC, then it's a remote call. If it's anything else: it's not a remote call.
Adam
Similar Messages
-
Duplex printing problem with access method G
Dear all,
We have Canon GP300-405 PS Ver 1.0 printer.
Previously, with access method F: Printing on front end computer, we were able to do duplex printing.
Now we have changed the the access method to G: Front End Printing with Control Tech and we are not able to do duplex printing
We have ECC 6.0 / AIX / Oracle
I installed SAPGUI patch 17 but still I am not able to do duplex printing
Any suggestion?
Rgds..../Sandy,
This note will answer your query
Note 1149136 - Options for front-end printing (access method G)
Character string: "DcMode" [printer-specific]
Default: 0x0800
Other values: (Nearly) all, see below
Effect:
This parameter determines WHEN to send the control of
a) orientation portrait/landscape
b) paper size
c) duplex
d) tray
You need to set above mentioned parameters.
Regards, -
Error accessing method in 3rd party dll
already asked for help a few weeks ago but no one answered and i still wasn't able to figure out what the problem...
i have a 3rd party dll and im trying to access some methods (USING JNI)- i have no problem accessing methods with no parameters and they work fine but a method with parameters just wwont work.
i guess that its something with my syntax - probably incorrect data type when converting from java type to native type...
i dont have any previous expirience with c so help would be appriciated...
heres my java code:
package pavel2.javay;
class Test {
native String VersionGet();
native String loadDll();
native String LogInMT4(int account,String pass,String server,String a,String v,String c,String d);
static {
System.loadLibrary("pavel2");
public static void main(String args[]) {
Test t = new Test();
System.out.println(t.loadDll());
System.out.println(t.LogInMT4(230622,"qd1bvvs","Orion-DEMO","","","",""));
}and the dll wrapper:
#include <windows.h>
#include <C:\\Program Files\\Java\\jdk1.6.0_10\\include\\jni.h>
#include <C:\\Program Files\\Java\\jdk1.6.0_10\\include\\win32\\jni_md.h>
typedef char* (*LogIn_MT4)( const int login, const char *password, const char *server, const char *proxyserver,
const char *proxytype, const char *proxylogin, const char *proxypassword);
HINSTANCE hOle2Dll;
JNIEXPORT jstring JNICALL Java_pavel2_javay_Test_loadDll(JNIEnv * env, jobject jobj){
hOle2Dll = LoadLibrary(TEXT("D:\\pavel2\\tzmt4api.dll"));
return (*env)->NewStringUTF(env, "tzmt4api.dll loaded!!");
/*if (OleInitialize(NULL) == S_OK)
if ( hOle2Dll >= 32 )
//FreeLibrary ( hOle2Dll ) ;
JNIEXPORT jstring JNICALL Java_pavel2_javay_Test_LogInMT4(JNIEnv * env, jobject jobj,jint login, jstring password, jstring server,jstring proxyserver,jstring proxytype,jstring proxylogin,jstring proxypassword){
LogIn_MT4 fnc ;
fnc = (LogIn_MT4)GetProcAddress ( hOle2Dll , "LogIn_MT4" ) ;
if ( fnc == NULL )
MessageBox(NULL, TEXT("Error loading Method"), TEXT("Error"), MB_OK);
else
const char *pass = (*env)->GetStringUTFChars(env, password, NULL);
const char *ser = (*env)->GetStringUTFChars(env, server, NULL);
const char *proxyserv = (*env)->GetStringUTFChars(env, proxyserver, NULL);
const char *proxyt = (*env)->GetStringUTFChars(env, proxytype, NULL);
const char *proxylog = (*env)->GetStringUTFChars(env, proxylogin, NULL);
const char *proxypass = (*env)->GetStringUTFChars(env, proxypassword, NULL);
int a=fnc(login, pass, ser, proxyserv,proxyt,proxylog,proxypass);
(*env)->ReleaseStringUTFChars(env, password, pass);
(*env)->ReleaseStringUTFChars(env, server, ser);
(*env)->ReleaseStringUTFChars(env, proxyserver, proxyserv);
(*env)->ReleaseStringUTFChars(env, proxytype, proxyt);
(*env)->ReleaseStringUTFChars(env, proxylogin, proxylog);
(*env)->ReleaseStringUTFChars(env, proxypassword, proxypass);
//return (*env)->NewStringUTF(env, empty);
return (*env)->NewStringUTF(env, "logged");
//int c = fnc(login, *password, *server, "", "", "", "");
BOOL APIENTRY DllMain( HMODULE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
switch (ul_reason_for_call)
case DLL_PROCESS_ATTACH:
case DLL_THREAD_ATTACH:
case DLL_THREAD_DETACH:
case DLL_PROCESS_DETACH:
//todo: unregister class here
break;
return TRUE;
}this is the output:
tzmt4api.dll loaded!!
# An unexpected error has been detected by Java Runtime Environment:
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0xcccccccc, pid=3792, tid=3824
# Java VM: Java HotSpot(TM) Client VM (11.0-b15 mixed mode, sharing windows-x86)
# Problematic frame:
# C 0xcccccccc
# An error report file with more information is saved as:
# C:\Program Files\TradeZone\TZMT4APInew\Work\hs_err_pid3792.log
# If you would like to submit a bug report, please visit:
# http://java.sun.com/webapps/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
Process finished with exit code 1
p.s - it looks like the login method works but when returning to java the VM crashes
can anyone help me?jschell - tried this already and got the same ..
ejp - i cant do this bucause i dont have a .lib and this proccess can run only on windows unfortunately...
my problem is that i dont know the how to create the correct type for the method:
this is the signature:
typedef int (*LogIn_MT4)( const int login, const char *password, const char *server, const char *proxyserver,
const char *proxytype, const char *proxylogin, const char *proxypassword);how do i create in c this var types?
int a=fnc(1531, "asas", "asd", "","","","");how do i create
const char *xxx type? and its okay for the int just to write a number or i also need to declare it? -
SolMan 4.0: Support Team determination via Access Sequence not working
Hi,
from all the documentation I've read I got the following understanding for automatically determination of Support Team via Access Sequence (well, for one possibillity at least):
- Maintain Sold-to-Party in IBase IB52, especially country attribute. DONE
- Maintain Organizational Structure in PPOMA_CRM and create Org. Units, Business Partner No. get assigned automatically. DONE
- The Organizational Unit "Support Team" has the same country attribute as the Sold-to-Party and was marked "Obj. Permitted in Determination". DONE
- In IMG under SolMan -> Sc.-Specific Settings -> Partner Det. Proc. -> Def. Partner Det. Procedure select Procedure "SLFN0001" -> Partner Functions in Procedure -> Select "Support Team" -> Details, in block "Partner Determination" under "Access Sequence" select "Organizational data: Support Team by org. model". DONE
If I now create a support message in a satellite system the Support-Team will NOT be assigned. Instead if I have a look into transaction data of the message under tab "Actions" there is an entry "When message is created, find support team responsible" with processing parameters RULE AC13200137, PARTNER_FCT SLFN0003.
This makes absolutely no sense to me, why is the determination rule 13200137 used (which contains no entries at the moment) instead of the assigned Access Sequence?
Am I missing something?
Regards,
Marco KipkaHi,
no hint for solving the problem?
This is getting quite urgent, since I'm working at a customers site and try to implement the describted scenario.
Regards,
Marco -
Can't printing in front-end when implement LOCL access method 'G'
We are implementing ECC5.0 and print Purchase Order in normal status.But in recent,user print PO by long printer name with some trouble.So we check the notes,and it recommand us to implement access method 'G'.It seems every thing is OK on front-end printing.Still not work for printing PO on front-end output immediate.If we choose short printer name and access method 'F',it work fine.But SAP will no longer develop method 'F'.Please advise it.
SAP PO is using background printing. SAP frontend print doesn't support background printing.
As per SAP Frontend document, You cannot perform front-end printing in the background, as there is not connection to the front end.
For this, you need to configure network printer.
Thanks,
Miral. -
Front - end print with new access method G - having issues for some users
Hi Gurus,
Recently we have implemented the new access method G for front-end printing. it is working fine for 90% users in our company. but some users having problems in printing to WINDEFAULT using this new method.
Here is the SAP GUI trace file for the error that they are getting.
(Error)(25.09.09 15:42:36.444): CALL METHOD "CreateControl"[DispID=5] OF [#1/0x0AE31790/1/{83658045-6571-3232-7082-797884697868}]
#0: LONG "101"
#1: STRING "SAPFPRINT.sapfprintCtrl.1"
#2: LONG "0"
#3: LONG "10"
IDispatch::Invoke raised exceptionException occurred
(Error) :
(Error) : ****************************ERROR OCCURED IN MODULE: [{83658045-6571-3232-7082-797884697868}]******************************************************************************************************
(Error) : PROGRAM_ID |MODULE_NAME |METHOD_NAME |ERROR DESCRIPTION |VERSION |GUI VERSION |MODULE_PATH |
(Error) : *****************************************************************************************************************************************************************************************************
(Error) : {83658045-6571-3232-7082-797884697868} |Class name not found |CreateControl |Create control failed |Version info not found |Gui Version not found |Module doesnot exist |
(Error) : *****************************************************************************************************************************************************************************************************
(Error) :
(Error) : Exception fire by :SAP Frontend Server
(Error) : Exception info:Create control failed
(Error) : Exception code:65535
Did any one face this error? what could be the resolution?
We are already on SAP GUI 710 patch level 11
DISP+Work : 229
Appreciate your answers
Thanks,
SriniUsually this means, that some necessary controls are not properly registered in the registry and hence can't be found. You may solve that by removing the SAPGUI from the PC completely, booting the machine and reinstall the GUI.
Markus -
DB_HEAP access method with db_hotbackup utility
I open a Db handle with DB_HEAP access method and do nothing about it . When first created , the db file is 8kb , but after excuting db_hotbackup utility the db file is 4kb. if I do db_hotbackup under the failover environment , BDB give me an error message :
db_hotbackup: Backup Failed: BDB0075 DB_PAGE_NOTFOUND: Requested page not found
db_hotbackup: BDB5043 HOT BACKUP FAILED!
Other access method is ok . I try to set the Db pagesize 8kb but still wrong .
I think a db file is bigger than a page size. So it's hard to understand.
ThanksSorry about mix the two problems. Let me make it clearly :
1 .Create an Environment contains an empty DB_HEAP database file with the code below.
1.1 compile the code and mkdir "fileHome" for Environment direcotory,
1.2 execute the program
2. execute { db_hotbackup -h ./fileHome -b ./failover } . and in failover directory the database file will become smaller than it in Environment direcotry.
3. chang code { const char* fileHome = "fileHome"; } to { const char* fileHome = "failover"; }
4. compile the changed code and execute again.( for creating region files in the failover directory)
5. execute { db_hotbackup -h ./failover -b ./failover_back } after this we can see the wrong message :
db_hotbackup: Backup Failed: BDB0075 DB_PAGE_NOTFOUND: Requested page not found
db_hotbackup: BDB5043 HOT BACKUP FAILED!
The problem I said on the previous time is I try to insert some record to the database but failed. I just wonder if this BDB version is not supportint DB_HEAP access method.
The code is :
#include<iostream>
#include<cstring>
#include<cstdlib>
#include"db_cxx.h"
int main()
u_int32_t env_flags = DB_CREATE |
DB_INIT_LOCK |
DB_INIT_LOG |
DB_INIT_TXN |
DB_INIT_MPOOL;
u_int32_t db_flags = DB_CREATE | DB_AUTO_COMMIT;
const char* fileHome = "fileHome";
const char* filename = "simpletxn.db";
Db *dbp = NULL;
DbEnv myEnv(0);
try{
myEnv.open(fileHome,env_flags,0);
dbp = new Db(&myEnv,0);
dbp->set_pagesize(8 * 1024);
dbp->open(0,
filename,
NULL,
DB_HEAP,
db_flags,
0);
}catch(DbException& e){
std::cerr<<"error when opening environment and database: "<<filename<<","<<fileHome<<std::endl;
std::cerr<<e.what()<<std::endl;
try{
if(dbp != NULL)
dbp->close(0);
myEnv.close(0);
}catch(DbException& e){
std::cerr<<"error when closing environment and database: "<<filename<<","<<fileHome<<std::endl;
std::cerr<<e.what()<<std::endl;
return 0;
Thanks !!! -
Queue access method for In-memory databases
Hi,
I am trying to use the Queue access method for an in-memory database
with no backing file. Here is the how I've created the environment and
the database.
int env_flags_create = DB_CREATE | DB_INIT_LOG | DB_INIT_LOCK |
DB_INIT_MPOOL |DB_INIT_TXN |
DB_SYSTEM_MEM | DB_RECOVER | DB_THREAD ;
ret = env->set_shm_key(env, 17);
ret = env->open(env, R_"in-mem-env", env_flags, 0644);
int db_flags = DB_CREATE | DB_THREAD | DB_AUTO_COMMIT;
DB_MPOOLFILE *mpf = subs_db->get_mpf(subs_db);
mpf->set_flags(mpf, DB_MPOOL_NOFILE, 1);
ret = queue_db->set_re_len(queue_db, 512);
ret = queue_db->open(queue_db, NULL, NULL, "queue", DB_QUEUE,
db_flags, 0644);
My application has one reader threads and one writer thread. The
writer write to the queue with the "DB_APPEND" flag and the reader
consumes the queue using the "DB_CONSUME_WAIT" flag.
After inserting a few thousand messages the database fails to insert
any new records and starts returning the following error.
"unable to allocate space from the buffer cache"
From the db_stat -e output (attached below) I can see that none of
the buffer cache pages are ever being freed up.
149907 Requested pages found in the cache (99%)
3 Requested pages not found in the cache
2004 Pages created in the cache
0 Pages read into the cache
0 Pages written from the cache to the backing file
0 Clean pages forced from the cache
0 Dirty pages forced from the cache
0 Dirty pages written by trickle-sync thread
2004 Current total page count
0 Current clean page count
2004 Current dirty page count
4099 Number of hash buckets used for page location
153851 Total number of times hash chains searched for a page
BDB reference manual (http://www.oracle.com/technology/documentation/
berkeley-db/db/api_c/frame.html) says that the pages associated with a
queue can only be reclaimed by setting a queue extent by using the
"set_q_extentsize" method. When I try to use this method on my in-
memory database I get the following error.
" Extent size may not be specified for in-memory queue database"
Does this mean that I can never use the queue access method for in-
memory database? Because no matter how big of a shared memory pool I
allocate to the in-memory database it will eventually get used up by
the queue (if I'm inserting and consuming records) and there is no way
to free up the pages associated with the deleted records.
thx
ninaAs far as I know you can choose any method as long as print setting are set to "send to spool"
Regards
Juan -
Best Access Method and Estimated Performance
Dear folks,
I'm new to BDB. Although I have read all the documentation and the DS Presentation from Margo, I would like to ask your help to tunne my db layout.
I have to index 1 million key/data pairs in wich key is a logical number and data is 256 lenght (64 int array).
The size of the database is around 200MB. After the initial seed of data, the data will be READ ONLY. No need for concurrent access. One C program will acess the DB (single threaded).
I'm running on a Dual Xeon 3.2 GHz with 4 gb RAM.
I've choosen to use the QUEUE ACCESS METHOD (since I'm using logical numbers as key and a fixed data size).
I need to randomly access 140.000 keys in the DB.
As I've read from the documentation this would be accomplished in less than a second.
I would like to ask you what would be the expected retrieval time (number of keys/second) for my case (millions of 256 bytes data, with default configuration options) and if QUEUE is the best choice.
From my implementation test the c program takes a considerable amount of time the first time it queries (dpb->get) the database for 140.000 keys (is this the so called COLD START?). The successive times I run the program querying the DB with different 140.000 random keys it becames faster for each new run (is this because I'm warming up the cache?).
I'm using default configuration values for all tunning params: cache, mmapsize, etc...
Would it be possible to load the whole DB in memory before querying it with dpb->get? Would it make the 140.000 querying process faster?
I've tryied to iterate trough every record with a cursor and it takes around 5 seconds the first time and then gets faster on the successive runs. I've also tryied to iterate through every page to "warm up" the process before querying the 140.000 keys but did not have a great improvement.
My goal is to query 140.000 random keys from the DB as fastest as possible. (Be it changing by choosing a more appropriate access method, be it for tunning the config parameters).
I appreciate your help.
Maurice S.Thank you Michael for your reply!!!
I've seen the thread regarding the strategy of openning the mpool file and iterating through the pages.
I've implemented that sucessfully (that reduced the total time required to perform the "get's" and also make this time a CONSTANT of around 0.5 seconds).
My implementation works the following way:
1) First I create the DB_ENV pointer
1.A) All my dbs are in a folder called "dbs". Therefore I call dbenv->set_data_dir appropriatelly
1.B) dbenv->set_mp_mmapsize(dbenv,300*1024*1024); (each DB has 183 MB)
1.C) I set the cache size to the smallest possible value dbenv->set_cachesize(dbenv, 0, 20 *1024, 0); [as I've read through the forum about similar cases]
1.D) Finally dbenv->open(dbenv, "db",DB_CREATE | DB_RDONLY| DB_INIT_MPOOL, 0))
2) Then I call the db (wich has 700.000 records; with for 4 bytes for each key, and 260 bytes for each data)
2.A) db_create(&dbs[c], dbenv, 0))
2.B) dbs[c]->set_re_len(dbs[c],260)
2.C) dbs[c]->set_pagesize(dbs[c], 64*1024))
2.D) dbs[c]->open(dbs[c],NULL, database, NULL, DB_QUEUE, DB_RDONLY, 0664))
Then I do the "mpool file iteration":
.....all the code from that thread.....
DB_MPOOLFILE* mfp =NULL;
mfp = dbs[c]->get_mpf(dbs[c]);
db_pgno_t lastPageNum;
void* pageAddr;
mfp->get(mfp, &lastPageNum, NULL, DB_MPOOL_LAST, &pageAddr);
mfp->put(mfp, pageAddr, DB_PRIORITY_UNCHANGED, 0);
db_pgno_t pageNum=0;
for(pageNum=0; pageNum<=lastPageNum; pageNum++)
mfp->get(mfp,&pageNum, NULL, 0, &pageAddr);
mfp->put(mfp,pageAddr, DB_PRIORITY_UNCHANGED,0);
And then I get 140.000 random records:
DBT key, data;
for(k=0;k<140000;k++)
db_recno_t recno=rand()%700000;
memset(&key, 0, sizeof(DBT));
memset(&data, 0, sizeof(DBT));
key.data = &recno;
key.size = sizeof(recno);
int dc[65];
data.data = dc;
data.ulen = sizeof(dc);
data.flags = DB_DBT_USERMEM;
dbp->get(dbp, NULL, &key, &data, 0);
It takes around 0.5 seconds to perform all 140.000 random GET's.
I have 20 DB's like the one described above.
Changing the code above in order to use another one of the 20 DB's results in the same EXECUTION TIME (around 0.5 seconds).
Is this the performance that you would expect from BDB? 280.000 random accessess per second in a 700.000 records QUEUE DB with 260 bytes data field?
Is there any other parameters I could tunne to improve performace?
Would BTREE acess method perform better ? (I could index the record numbers as strings: "00000001", "00000002", ..... )
I do appreciate your attention.
Hope my post can be a source for help to other BDB users, as the forum has been to me.
Best rgs,
Maurice S. -
What is data determination in access?
hi gurus,
what is data determination in access? what are the docs not in pricing that was mentioned in its definition?
thanks,
paulhi,
Data determination requires a structure in which the data determined can be stored and accessed from pricing. Communication structure KOMPAZD is provided for this purpose.
The standard system provides the following fields in this structure:
Price list type
Exclusion indicator
Communication structure KOMPAZD can be extended in the same way as communication structures KOMKAZ and KOMPAZ.
This is described in SD Customizing under:
Sales and Distribution ® System Modification ® Create new fields (using condition technique) ® New fields for pricing
Prerequisites:
Data determination in the access for pricing takes place at field level. A field is selected for this. It is used for data determination, not pricing. This is carried out as follows:
When maintaining a condition table, you can choose a field from the key in the Technical Settings field. It is then designated as a data field and is automatically indicated with C in the access in Customizing for access sequences. This is only possible when it is created. If you want to change existing condition tables, you must delete them and then recreate them.
Link
regards
sadhu kishore -
Related to insertion into HASH access method
Hi,
I have four multi-threaded processes (2 writer and 2 reader processes), which make use of Berkeley DB transactional data store. I have multiple environments and the associated database and log files are located in separate directories.
Database access method used is DB_HASH.
When I looked into stack trace of the Writer process, following is observed:
A] Indicates insertion into HASH database
ffffffff7b9a84f4 _pwrite (65, fffffffea28bc6e0, 2000, 3e18000, 7358, 7357) + c
ffffffff7c667bec __os_io (104c58c80, 3e18000, 104c9f140, 1f0c, 2000, 0) + 29c
ffffffff7c650fb0 __memp_pgwrite (104c58c80, 104c9c250, fffffffea00e4d98, fffffffea28bc698, 0, 2000) + 200
ffffffff7c650aa4 __memp_bhwrite (104c58c80, 104c9c250, fffffffea03829e8, fffffffea28bc698, 0, 100c559c0) + 454
ffffffff7c64fa84 __memp_alloc (fffffffea00e4dc4, fffffffea00e4d98, 1852e6, 0, 104c58c80, fffffffea0000138) + 72c
ffffffff7c65360c __memp_fget (104ca1a50, 104ca4b54, 0, fffffffea0384c18, 0, fffffffea0000138) + 1bdc
ffffffff7c5909ac __ham_get_cpage (104ca4920, 0, 104ca4b60, 104ca1a50, 104ca4b40, 104ca14d0) + 1c4
ffffffff7c57d334 __ham_lookup (104ca4920, fffffffe3e3fb140, 1bb5, 2, fffffffe3e3fa4dc, 104ca4b40) + 74
ffffffff7c57badc __hamc_put (104ca4920, fffffffe3e3fb140, fffffffe3e3fb118, 34, fffffffe3e3fa4dc, 104ca4b40) + ec
ffffffff7c603230 __dbc_put (104ca4920, 28, e, 104ca4920, 104ca4920, ffffffff7c794508) + db0
ffffffff7c5f538c __db_put (104ca14d0, 19f388, 104ca15d8, fffffffe3e3fb140, fffffffe3e3fb118, 0) + 21c
ffffffff7c60e00c __db_put_pp (104c58c80, 0, fffffffe3e3fb140, fffffffe3e3fb118, 0, 104ca14d0) + 244
00000001001079f0 __1cLBDBDatabaseGinsert6MrknDstdEpair4CpCC2__IkIIII_v_ (104c9c3a0, 0, 4, 7, 74, 4) + 178
00000001001b83cc __1cIIndexSetKwriteIndex6MrkirnDstdDmap4n0BEpair4CpCC4__CIn0BEless4n0C___n0BJallocator4n0BEpair4Ckn0C_CI___
____i_ (1009ecf80, 104ca7398, 1069fbee0, 74, 45f29f466a48b, 10084bcd0) + b8
00000001000af1e8 __1cLIndexWriterOpProcessObject6MpnDstdDmap4n0BEpair4CpCC2__CIn0BEless4n0C___n0BJallocator4n0BEpair4Ckn0C_C
I_______v_ (104ca7240, 1069fbee0, fffffff71e49eb29, 92b0e8920, 100572990, 49587449) + 214
00000001000b156c __1cbJManagerProducerThreadConsumersModel4nDstdDmap4n0AEpair4CpCC1__CIn0AEless4n0B___n0AJallocator4n0AEpair
4Ckn0B_CI_______OpDoProcessHook6M_v_ (104ca7240, 1069fbee0, 1003d1, 0, 1005729e0, 1003d120c) + 250
00000001002bc224 __1cKThreadBaseKmDoProcess6M_v_ (104ca7240, 10043d000, 1000b131c, 104ca72a0, 10043dc6d, 10020e90c) + 1ac
00000001002bbf44 __1cKThreadBaseQmThreadMainChild6Fpv_1_ (104ca7240, 100572000, 10043d, 0, 10043dbcb, 1005729e0) + ec
ffffffff7eb17c9c lwpstart (0, 0, 0, 0, 0, 0)
B] Does the below stack trace indicate the insertion into HASH database? I am getting this doubt because the above and below mentioned stack traces
differ. Can this happen when the access method used is DB_HASH or is it something to do with application flag / config settings? Please suggest.
ffffffff7b9a71f4 _pread (65, fffffffeae356140, 2000, 129c8000, 81e6, 81e5) + c
ffffffff7c667acc __os_io (104c58c80, 129c8000, 104c9f140, 94e4, 2000, 0) + 17c
ffffffff7c650bfc __memp_pgread (104c9c250, fffffffea0079c58, fffffffeae3560f8, 0, 0, 104c58c80) + 90
ffffffff7c653928 __memp_fget (104c9c250, 0, fffffffeae3560f8, fffffffea03829e8, 1, fffffffea0000138) + 1ef8
ffffffff7c5619e8 __bam_get_root (104d1cde0, 2, 20002, 1000, fffffffe3e7fa1e4, 0) + d8
* ffffffff7c5606ec __bam_rsearch (104d1cde0, 104d1d32c, 3242, 1, 104c9c250, 3242) + 44*
* ffffffff7c560438 __ram_add (104d1cde0, 104d1d32c, fffffffe3e7fb118, 2, 0, 104d1d200) + 44*
* ffffffff7c55ecb4 __ramc_put (104d1cde0, fffffffe3e7fb140, fffffffe3e7fb118, e, 0, 0) + 64*
ffffffff7c6032c0 __dbc_put (104c9f200, 28, e, 104c9f200, ffffffff7c55ec50, e) + e40
ffffffff7c5f538c __db_put (104c9bc60, 19f388, 104c9bd68, fffffffe3e7fb140, fffffffe3e7fb118, 0) + 21c
ffffffff7c60e00c __db_put_pp (104c58c80, 0, fffffffe3e7fb140, fffffffe3e7fb118, 0, 104c9bc60) + 244
00000001001079f0 __1cLBDBDatabaseGinsert6MrknDstdEpair4CpCC2__IkIIII_v_ (104c95790, 0, 4, 7, 74, 4) + 178
00000001001b83cc __1cIIndexSetKwriteIndex6MrkirnDstdDmap4n0BEpair4CpCC4__CIn0BEless4n0C___n0BJallocator4n0BEpair4Ckn0C_CI___
____i_ (1009ecf80, 104ca6ee8, 105f8a580, 74, 45f29f466b002, 10084bcd0) + b8
00000001000af1e8 __1cLIndexWriterOpProcessObject6MpnDstdDmap4n0BEpair4CpCC2__CIn0BEless4n0C___n0BJallocator4n0BEpair4Ckn0C_C
I_______v_ (104ca6d90, 105f8a580, fffffff71e49eb29, 92b0e8920, 100572990, 49587449) + 214
00000001000b156c __1cbJManagerProducerThreadConsumersModel4nDstdDmap4n0AEpair4CpCC1__CIn0AEless4n0B___n0AJallocator4n0AEpair
4Ckn0B_CI_______OpDoProcessHook6M_v_ (104ca6d90, 105f8a580, 1003d1, 0, 1005729e0, 1003d120c) + 250
00000001002bc224 __1cKThreadBaseKmDoProcess6M_v_ (104ca6d90, 10043d000, 1000b131c, 104ca6df0, 10043dc6d, 10020e90c) + 1ac
00000001002bbf44 __1cKThreadBaseQmThreadMainChild6Fpv_1_ (104ca6d90, 100572000, 10043d, 0, 10043dbcb, 1005729e0) + ec
ffffffff7eb17c9c lwpstart (0, 0, 0, 0, 0, 0)
Details about the application are as follows:
For Writer / Reader:
Environment flags : DB_CREATE | DB_INIT_MPOOL | DB_THREAD | DB_INIT_LOCK | DB_INIT_TXN
Following are the parameters to db->open function call:
WRITER*
DB->open(DB *db,
DB_TXN *txnid, => NULL
const char *file, => file name
const char *database, => NULL
DBTYPE type, => DB_HASH
u_int32_t flags, => DB_READ_UNCOMMITTED | DB_AUTO_COMMIT | DB_CREATE | DB_THREAD
int mode => 0);
Also, DB_DUP flag is set.
READER_
DB->open(DB *db,
DB_TXN *txnid, => NULL
const char *file, => file name
const char *database, => NULL
DBTYPE type, => DB_UNKNOWN
u_int32_t flags, => DB_READ_UNCOMMITTED | DB_RDONLY | DB_AUTO_COMMIT | DB_THREAD
int mode => 0);
DB_CONFIG file contents are as follows:
set_cachesize 0 536870912 1
set_lg_bsize 10485760
set_data_dir DATADIR
set_lg_dir LOGDIR
set_lk_max_locks 100000
set_lk_max_lockers 100000
set_lk_max_objects 100000
set_flags DB_REGION_INIT
set_tx_max 150
mutex_set_increment 7500
Thanks,
MageshHi Nandish,
DB statistics were collected using the following command:
db_stat -d <database name>
When db_stat and db_verify utilities were run during the application runtime, both of them failed for most of the databases.
Please find below sample output for db_stat and db_verify utilities for 'SUBID_P1_S1_FF3' DB:
Sun Jan 4 07:55:28 2009 Local time
db_stat: page 44972: illegal page type or format
db_stat: PANIC: Invalid argument
db_stat: PANIC: fatal region error detected; run recovery
db_stat: close: DB_RUNRECOVERY: Fatal error, run database recovery
db_stat: File handles still open at environment close
db_stat: Open file handle: /opt/vol1/data/SUBID_P1_S1_FF3
db_stat: PANIC: fatal region error detected; run recovery
db_stat: dbenv->close: DB_RUNRECOVERY: Fatal error, run database recovery
db_verify: Page 44972: duplicate page of inappropriate type 13
db_verify: Page 20769: record count incorrect: actual 285, in record 286
db_verify: Page 9337: bad record count: has 867 records, claims 868
db_verify: Page 44497: record count incorrect: actual 88, in record 81
db_verify: Page 21317: bad record count: has 670 records, claims 663
db_verify: Page 4524: record count incorrect: actual 273, in record 275
db_verify: Page 1141: bad record count: has 2601 records, claims 2603
db_verify: Page 40872: record count incorrect: actual 380, in record 382
db_verify: Page 20150: bad record count: has 962 records, claims 964
db_verify: Page 44984: duplicate page of inappropriate type 0
db_verify: Page 43953: record count incorrect: actual 9, in record 8
db_verify: Page 9877: bad record count: has 591 records, claims 590
db_verify: Page 44994: duplicate page of inappropriate type 0
db_verify: Page 41115: record count incorrect: actual 100, in record 101
db_verify: Page 9279: bad record count: has 682 records, claims 683
db_verify: Page 44975: duplicate page of inappropriate type 13
db_verify: Page 44997: duplicate page of inappropriate type 0
db_verify: Page 8113: item 0 hashes incorrectly
db_verify: Page 8113: item 4 hashes incorrectly
db_verify: Page 8113: item 8 hashes incorrectly
db_verify: Page 8143: item 40 hashes incorrectly
db_verify: Page 8143: item 42 hashes incorrectly
db_verify: Page 8143: item 46 hashes incorrectly
db_verify: Page 8143: item 60 hashes incorrectly
db_verify: Page 8143: item 62 hashes incorrectly
db_verify: Page 39405: hash page has bad prev_pgno
db_verify: Page 8145: item 4 hashes incorrectly
db_verify: Page 8145: item 10 hashes incorrectly
db_verify: Page 8145: item 20 hashes incorrectly
db_verify: Page 8145: item 22 hashes incorrectly
db_verify: Page 8145: item 28 hashes incorrectly
db_verify: Page 8145: item 32 hashes incorrectly
db_verify: Page 8145: item 38 hashes incorrectly
db_verify: Page 8145: item 40 hashes incorrectly
db_verify: Page 8145: item 48 hashes incorrectly
db_verify: Page 44993: duplicate page of inappropriate type 0
db_verify: Page 42178: record count incorrect: actual 581, in record 582
db_verify: Page 40166: btree or recno page is of inappropriate type 13
db_verify: Page 40166: record count incorrect: actual 0, in record 62
db_verify: Page 9206: bad record count: has 2909 records, claims 2972
db_verify: Page 44985: hash page has bad prev_pgno
db_verify: Page 21250: record count incorrect: actual 494, in record 491
db_verify: Page 9834: bad record count: has 1076 records, claims 1073
db_verify: Page 39247: duplicate page of inappropriate type 13
db_verify: Page 44973: duplicate page of inappropriate type 13
db_verify: Page 20460: btree or recno page is of inappropriate type 13
db_verify: Page 20460: record count incorrect: actual 0, in record 9
db_verify: Page 20390: bad record count: has 4656 records, claims 4665
db_verify: Page 44696: unterminated leaf chain
db_verify: Page 43989: record count incorrect: actual 22, in record 21
db_verify: Page 8917: bad record count: has 604 records, claims 603
db_verify: Page 44982: hash page has bad prev_pgno
db_verify: Page 45000: hash page has bad prev_pgno
db_verify: Page 44981: duplicate page of inappropriate type 13
db_verify: Page 44990: hash page has bad prev_pgno
db_verify: Page 38676: record count incorrect: actual 107, in record 106
db_verify: Page 4486: bad record count: has 689 records, claims 688
db_verify: Page 39602: record count incorrect: actual 127, in record 129
db_verify: Page 9202: bad record count: has 709 records, claims 711
db_verify: Page 21291: record count incorrect: actual 175, in record 176
db_verify: Page 4585: bad record count: has 757 records, claims 758
db_verify: Page 44897: record count incorrect: actual 219, in record 95
db_verify: Page 2259: bad record count: has 3129 records, claims 3005
db_verify: Page 44987: duplicate page of inappropriate type 0
db_verify: Page 44979: duplicate page of inappropriate type 13
db_verify: Page 9055: duplicate page of inappropriate type 13
db_verify: Page 44980: hash page has bad prev_pgno
db_verify: Page 44971: duplicate page of inappropriate type 13
db_verify: Page 39405: hash page referenced twice
db_verify: Page 44995: duplicate page of inappropriate type 0
db_verify: Page 38457: hash page has bad prev_pgno
db_verify: Page 44986: duplicate page of inappropriate type 0
db_verify: Page 44179: btree or recno page is of inappropriate type 13
db_verify: Page 44179: record count incorrect: actual 0, in record 582
db_verify: Page 44999: btree or recno page is of inappropriate type 0
db_verify: Page 44999: record count incorrect: actual 0, in record 2
db_verify: Page 4709: bad record count: has 0 records, claims 584
db_verify: Page 41333: record count incorrect: actual 55, in record 54
db_verify: Page 9531: bad record count: has 637 records, claims 636
db_verify: Page 44970: hash page has bad prev_pgno
db_verify: Page 38400: record count incorrect: actual 132, in record 131
db_verify: Page 9811: bad record count: has 714 records, claims 713
db_verify: Page 40735: duplicate page of inappropriate type 13
db_verify: Page 44996: duplicate page of inappropriate type 0
db_verify: Page 44998: hash page has bad prev_pgno
db_verify: Page 44991: hash page has bad prev_pgno
db_verify: Page 44988: duplicate page of inappropriate type 0
db_verify: Page 44516: hash page has bad prev_pgno
db_verify: Page 44976: duplicate page of inappropriate type 13
db_verify: Page 43273: record count incorrect: actual 289, in record 280
db_verify: Page 1082: bad record count: has 2035 records, claims 2026
db_verify: Page 42154: record count incorrect: actual 78, in record 79
db_verify: Page 18214: bad record count: has 660 records, claims 661
db_verify: Page 44992: duplicate page of inappropriate type 0
db_verify: Page 42067: record count incorrect: actual 496, in record 487
db_verify: Page 2266: bad record count: has 2824 records, claims 2815
db_verify: Page 43694: record count incorrect: actual 23, in record 26
db_verify: Page 9294: bad record count: has 605 records, claims 608
db_verify: SUBID_P1_S1_FF3: DB_VERIFY_BAD: Database verification failed
After restarting the application, db_stat and db_verify utilities worked fine. Without running db_recover, if these commands are working fine means it is not a genuine case of database corruption.
Is it something to do with the way in which db_stat and db_verify utilities work?
We will also try using -h option for db_stat and db_verify utilities.
Thanks,
Magesh -
Monitors: SQL Server: Access Methods: Full Scans/sec
Hello,
I created a Monitor:
Monitors: SQL Server: Access Methods:
Full Scans/sec
It appears in Heath explorer on the servers
but is not available in the Performance Data for the Views...
What did I miss? I need to create a rule but which type ? linked to the monitor?
Should I use a Rule or a Monitor or a combination?
Thanks,
Dom
System Center
Operations Manager 2007 / System Center
Configuration Manager 2007 R2 /
Forefront Client Security
/ Forefront Identity ManagerHello,
I got on the servers the
1200:New Management Pack(s) requested. Management group "SCOM-MED", configuration id:"68 D8 86 93 7A 48 27 13 C0 6F B2 76 3C A4 07 87 DA 53 22 7F ".
1201:New Management Pack with id:"xxxx.SQL.Servers", version:"1.0.0.1" received.
1207... Rule/Monitor "Microsoft.Windows.SystemCenterDPM.DPMServerDiscovery" running for remote instance "MSQLCL1SQLBU.ad.medctr.ucla.edu" with id:"{A3100D57-1657-A51E-CD3E-6ACF2679A501}" will be disabled as it is not remotable.
Management group "SCOM-MED".
1210 New configuration became active. Management group "SCOM-MED", configuration id:"68 D8 86 93 7A 48 27 13 C0 6F B2 76 3C A4 07 87 DA 53 22 7F ".
still waiting ...
1204: Management Pack with id:"xxxx.SQL.Servers", version:"1.0.0.1" is no longer used by HealthService and will be deleted from cache.
Is this 1204 okay !!!!!
Thanks,
Dom
System Center Operations Manager 2007 / System Center Configuration Manager 2007 R2 / Forefront Client Security / Forefront Identity Manager -
CAF-CORe: Access methods option missing in CE7.11
HI Friends,
I am using Ce7.11 preview version.
I have created CAF Project->BO Nodes.
Now i have created Application service .Now i need to create Aceess methods.
In NWDS70 we used to have Access methods wherein when we check the CRUD methods, they are going to generate.
In CE7.11 i am unable to see those Access methods, Query methods option.
whay i see is Custom Option wherein to create individual operation adn BX extractor, the Other two options are missing.
Are the options removed from CE7.11?
Should we generatee teach operation manually ?
Regards
Chandra DasariClosed, because of no replies
-
hi gurus,
can you give me steps on how to setup a data determination in access? i think data determination for sales deals is one of the simplest way. can you help me?
thanks,
paulused to copy pricing of another pricing procedure
-
JET install using flash error: WARNING: FLASH Unknown FLASH access method
Hi all,
hoping someone can shed some light on this. I'm trying to utilize a flar image to jumpstart a server and get a unknown Flash access method error;
# ./make_client testserver
Gathering network information..
Client: xx.xx.xx.xx (xx.xx.xx.0/255.255.255.0)
Server: xx.xx.xx.xx (xx.xx.xx.xx/255.255.255.0, SunOS)
Solaris: client_prevalidate
Clean up /etc/ethers
Creating Client directory for testserver
Solaris: client_build
Creating sysidcfg
WARNING: no base_config_sysidcfg_timeserver specified using JumpStart server
Creating profile
Adding base_config specifics to client configuration
Adding flash specifics to client configuration
FLASH: Modifying client profile for flash install
FLASH: Removing package/cluster/usedisk entries from profile
Solaris: Configuring JumpStart boot for testserver
Solaris: Configure bootparams build
Starting SMF services for JumpStart
updating /etc/bootparams
Force bootparams terminal type
-Restart bootparamd
Running '/opt/SUNWjet/bin/check_client testserver'
Client: xx.xx.xx.xx (xx.xx.xx.xx/255.255.255.0)
Server: xx.xx.xx.xx (xx.xx.xx.xx/255.255.255.0, SunOS)
Checking product base_config/solaris
Checking product flash
WARNING: FLASH: Unknown FLASH access method (/export/install/FLARs/sol10000_00_os_0910_us_3.gbl.flashsun4utools_iplno.fsh)
Check of client testserver FAILS.
The images is shared out under /export/install:
# dfshares
RESOURCE SERVER ACCESS TRANSPORT
servername:/opt/SUNWjet servername - -
servername:/export/install servername - -
any help would be appreciated. JS is functioning when installing an image copied from media.
thanks
DHi,
I had exactly same problem. When I contacted my DBA he provided me Secured URL with https for the site and when i used that URL it worked with out problem.
Badari.
Maybe you are looking for
-
What is the keyboard shortcut for "force quit"?
I dont understand what keys those symbols stand for. Thanks!
-
Help... I managed to figure out how to create a nice media skin with no thanks to the incomplete and confusing instructions on the Apple Quicktime tutorial, but with many thanks to kkirkster's website and a few others. I am, however having an issue w
-
How do I open an unknown file type on ios
I have a specific file type that is nothing more than a text file. But when I receive emails with this file type, I can't do anything with it. It is a situation that happens all the time because it is a standard type of file that my company uses, s
-
I am to build a large-scale project with j2me and i need to control the process of development. What alternatives to RUP do you suggest?
-
Problem with concurrent request set api call
Hi, Scenario... I have a concurrent request set that is called as follows from a plsql script.... ** Note : I removed the cursor definition for simplicity. VARIABLE exit_status number DECLARE ln_request_id NUMBER := 0; ln_user_id apps.fnd_user.user_i