on 08-28-2007 10:17 AM
At the time of table re-organisation, Index creation got aborted for the secondary index creation. then we have continued our activity leaving the index creation due to short of System downtime.
Again we have run the sql statment when the sap system is up, then it has thrown an error:
ORA-1652 unable to extend temp segment by 128 in tablespace PSAPTEMP.
In the current system, we are not ready to increase the size of datafile or resizing.where it leads to the increase the size of database.
Here we have option to create a new temp tablespace, will delete after index creation, but while doing this how do we point the new tablespace which is created for this activity.
SAP 4.6c oracle 9 sun solaris.
Kindly advise what can be done. reply ASAP
If you connect with SYSDBA you have to assign the new temporary tablespace to SYS:
ALTER USER SYS TEMPORARY TABLESPACE PSAPTEMP1;
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Martin,
Could you please suggest me the possible technical ways to find the causes/reasons for the delay in Offline backup.
Our backup usually runs for the span of 21 hours. but from past two times it is consuming 22 hours plus. If you provide me your email id, I will send the two normal & delayed log files.
Thanks,
Please understand that I try to provide some quick answers for problems reported in SDN, but that I prefer not spend significant amounts of time to analyze different log files.
Nevertheless I suppose that note 842240 can be a good starting point for your analysis. Additionally you should check if the performance decrease started after you have activated direct I/O (either via filesystem mount option or via Oracle parameter FILESYSTEMIO_OPTIONS = SETALL).
Hi,
We have done the new hardware migration for testing system(PSS) and PSS refresh from the production data. CheckDB job has been scheduled from DB13. here the job is getting failed. still it is referring the path of production "Function stat() failed for '/oracle/PRD/sapdata7'".
Could you please advise me in which file I need to make the changes so that this job executes successfully.
Thanks,
I have written an answer in the other SDN thread. I think this thread here can be closed.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
In the CREATE statement you have written PSAPTEMP and not PSAPEMP1. Is this just a typo? To be on the safe side make sure that you log on with the SAPPRD user AFTER having assigned to new PSAPTEMP1 tablespace to this user.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Martin,
We have logged into database server with the user: ORAPRD, there into SQL
with the command:
SQLPLUS '/ as sysdba'
we dont know the user id and pwd for the user : SAPPRD.
then we deleted this LMTS/T tablespace and trying to create the tablespace with the DMTS/P.
Martin if you could please give me your contact number so that you can advise the steps to go ahead.
please help us frm this.
To be clean I would recommend to switch back to LOGGING, too (although NOLOGGING has only an influence on index builds and rebuilds):
ALTER INDEX "<index_name> LOGGING;
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Martin,
Hi,
we have created the temporary tablespace PSAPTEMP1 for the index creation.
CREATE TEMPORARY TABLESPACE "PSAPTEMP" TEMPFILE '/archive/temp' SIZE 51200M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 10240K;
ALTER USER PSAPPRD TEMPORARY TABLESPACE PSAPTEMP1
but when we use the 2nd query to use for the index creation, but for the index creation it is using the old tablespace PSAPTEMP.
could any one suggest how do we make use of the newly created tablespace for the index creation.
This we are doing live PRD system with the down time.
My number: is 0 98861 45002 else you give me your number I will call you.
please do the needful.
Many Thanks,
Answer given was quite appriciable.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
The order of the arguments doesn't matter, so your query is fine. Also the parallelism degree should be fine (you should run the CREATE during a time of low system activity of course).
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
NOLOGGING may be used if you are aware about the recovery restrictions. You may also use the PARALLEL option. See note 334224 for more details.
If the tablespace is dictionary managed, I would also recommend you to choose a larger value for NEXT in order to limit the number of extents.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Martin,
in the query, how these sequence arrive..
do we need to consider the nologging first or parallel or any sequence.
for parallel do we need to use (n-1) suppose if we have 4 cpu the parallel value should be 3..?
PARALLEL 3
NOLOGGING
here is my query: please verify and correct it.
CREATE INDEX "SAPPRD"."COEP~1" ON "SAPPRD"."COEP" ("MANDT", "LEDNR", "OBJNR",
"GJAHR", "WRTTP", "VERSN", "KSTAR", "HRKFT", "PERIO", "VRGNG", "PAROB", "USPOB",
"VBUND", "PARGB", "BEKNZ", "TWAER")
PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS
STORAGE(INITIAL 16384 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
nologging
parallel 4
TABLESPACE "PSAPPRD" ;
Thanks,
I would not worry too much about the normal SAP processes. Unless you use BW functionality the amount of PSAPTEMP accesses is rather small. So it should not matter if the normal SAP processes use the temporary temporary tablespace or not.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I would suggest the following steps:
- Create the new temporary tablespace (e.g. PSAPTEMP_NEW)
- Set the temporary tablespace for the SAP user to the new tablespace:
ALTER USER <sapuser> TEMPORARY TABLESPACE PSAPTEMP_NEW;
- Perform the index creation
- Set the temporary tablespace for the SAP user back to PSAPTEMP:
ALTER USER <sapuser> TEMPORARY TABLESPACE PSAPTEMP;
- Drop PSAPTEMP_NEW
Martin,
These are the user's, please advise which user from this list.
SQL> SELECT username, temporary_tablespace FROM dba_users;
USERNAME TEMPORARY_TABLESPACE
-
-
SYS PSAPTEMP
SYSTEM PSAPTEMP
OUTLN SYSTEM
OPS$PRDADM PSAPTEMP
SAPPRD PSAPTEMP
SC_FM SYSTEM
DBSNMP SYSTEM
OPS$ORAPRD SYSTEM
SAPR3 SYSTEM
which user we can use to go ahead with this transaction
"ALTER USER <sapuser> TEMPORARY TABLESPACE PSAPTEMP_NEW;"
Thanks,
Martin,
We have discussed with the team like,
1. Create new temporary tablespace with desired Size which should be minimum 25GB
CREATE temporary tablespace PSAPTEMP1......
2. If the original tablespace is a default temporary tablespace, set the new tablespace as default temporary tablespace in the database.
SQL> alter database default temporary tablespace PSAPTEMP1;
3. Perform the index creation
4. Make the old tablespace PSAPTEMP as the default temporary tablespace.
SQL> alter database default temporary tablespace PSAPTEMP
5. Drop the new tablespace.
SQL> drop tablespace temp including contents.
Here I have a question, while switching the default temporary tablespace from PSAPTEMP to the much bigger new PSAPTEMP1Tablespace whether this will affect the running transaction.
Any impact on switching the tablespace online..?
We are performing this activity in the online system(running sap system)
Thanks,
Martin, many thanks for ur suggestions we are implementing this solution.
<b>Here we Consider Creating Indexes with NOLOGGING</b>
by choosing this option we will:
Space is saved in the redo log files.
The time it takes to create the index is decreased.
Performance improves for parallel creation of large indexes.
below I have will give my index creation query please amend the query where the NOLOGGING will be used.
please reply ASAP.
"CREATE INDEX "SAPPRD"."COEP~1" ON "SAPPRD"."COEP" ("MANDT", "LEDNR", "OBJNR",
"GJAHR", "WRTTP", "VERSN", "KSTAR", "HRKFT", "PERIO", "VRGNG", "PAROB", "USPOB",
"VBUND", "PARGB", "BEKNZ", "TWAER")
PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS
STORAGE(INITIAL 16384 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
TABLESPACE "PSAPPRD" ;"
Many Thanks,
A different temporary tablespace can be assigned to a schema user with the following command:
alter user <schemauser> temporary tablespace <new_temp_tablespace>;
<schemauser> is typically SAPR3 or SAP<sid>.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
Could you please brief for your answer, after creating new temp tablespace how to you direct to use the new created tablespace. this we are doing online, then the current users of sap will try to use the new tablespace while running this activity.
is there a procedure to use this tablespace only for this activity and the existing tablesapce can be used by the sap users.
please breif.
Thanks
User | Count |
---|---|
84 | |
10 | |
10 | |
10 | |
7 | |
6 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.