1. The user running the transaction requires the RESUMABLE system privilege:
SQL> conn system/oracle
Connected.
SQL> grant resumable to scott;
Grant succeeded.
resumable权限也被包含在其它role里面,比如dba,当一个用户拥有dba role时,就自动拥有了resumable privilege.
2. Set the session so that the following transactions might be resumed in case of interruption due to space allocation:
SQL> alter session enable resumable;
Session altered.
This can be set automatically through anAFTER LOGON trigger.
--也可以通过触发器来自动设置
SQL> create or replace trigger logon_set_resumable
2 after logon
3 on scott.schema
4 begin
5 execute immediate 'alter session enable resumable timeout 1200';
6 end;
7 /
Trigger created.
3. While inserting newrows into TEST_RESUMABLE table, the user session hangs,but the transaction doesnot roll back:
The DBA can retrieve(得到;取到) the reason why the session of user SCOTT hangs in DBA_RESUMABLE view:
3.1 Displaying the DBA_RESUMABLE view:
SQL> select user_id,SESSION_ID, STATUS, START_TIME, SUSPEND_TIME,
2 SQL_TEXT, ERROR_NUMBER, ERROR_MSG
3 from dba_resumable;
USER_ID SESSION_ID STATUS START_TIME SUSPEND_TIME
---------- ---------- --------- -------------------- --------------------
SQL_TEXT
-------------------------------------------------------------------------
ERROR_NUMBER
------------
ERROR_MSG
-------------------------------------------------------------------------
54 9 SUSPENDED 03/14/01 10:49:25 03/14/01 11:14:17
insert into test_resumable select * from test_resumable
1631
ORA-01631: max # extents (5) reached in table SCOTT.TEST_RESUMABLE
3.2 In alert.log file:
Wed Mar 14 11:14:17 2001
statement in resumable session 'User SCOTT(54), Session 9, Instance 1'was suspended due to ORA-01631: max # extents (5) reached in table SCOTT.TEST_RESUMABLE
3.3 The statement may issue the following error when the timeout set for the session has expired:
SQL> insert into test_resumable values (1);
insert into test_resumable values (1)
*
ERROR at line 1:
ORA-30032: the suspended (resumable) statement has timed out
ORA-01536: space quota exceeded for tablespace 'EXAMPLE'
3.4 The DBA now knows why the session hangs, and needs to find which action to take to alleviate the ora-01536 error:
SQL> connect system/manager
Connected.
SQL> alter table scott.test_resumable storage (max extents 8);
Table altered.
In alert.log file:
Wed Mar 14 11:24:02 2001
statement in resumable session 'User SCOTT(54), Session 9, Instance 1'
was resumed and no more errors in DBA_RESUMABLE view:
SQL>select user_id,SESSION_ID, STATUS, START_TIME, RESUME_TIME,
2 SQL_TEXT, ERROR_NUMBER, ERROR_MSG
3 from dba_resumable;
USER_ID SESSION_ID STATUS START_TIME RESUME_TIME
---------- ---------- --------- -------------------- --------------------
SQL_TEXT
-------------------------------------------------------------------------
ERROR_NUMBER
------------
ERROR_MSG
-------------------------------------------------------------------------
54 9 NORMAL 03/14/01 10:49:25 03/14/01 11:24:02
insert into test_resumable select * from test_resumable
0
While the status is NORMAL or the error_number is 0, the resumable statements keep on working correctly unless the timeout is expired.
This also means that there are sessions set in resumable state.
As soon as an error_number <> 0 appears, then a resumable session has encountered a space allocation issue.
Note:
The DBA can cancel the resumable transaction by aborting the session by the procedure DBMS_RESUMABLE.ABORT(sid#). An ORA-1013 "user requested cancel of current operation" is returned to the user.
3.5 If the session does not need to be in resumable state, the session can disable the resumable state:
SQL> alter session disable resumable;
Session altered.
SQL> select user_id,SESSION_ID, STATUS, START_TIME, RESUME_TIME,
2 SQL_TEXT, ERROR_NUMBER, ERROR_MSG
3 from dba_resumable;
no rows selected
3.6 Other space errors that suspend transactions
-------------------------------------------------------------------
***
statement in resumable session 'User SCOTT(54), Session 9, Instance 1' was suspended due to ORA-01536: space quota exceeded for tablespace 'EXAMPLE'
***
statement in resumable session 'User SCOTT(54), Session 8, Instance 1' was suspended due to ORA-01562: failed to extend rollback segment number 11
***
statement in resumable session 'User SCOTT(54), Session 8, Instance 1' was suspended due to ORA-01628: max # extents (2) reached for rollback segment RS01 FULL status of rollback segment 11 set
***
statement in resumable session 'User SCOTT(54), Session 9, Instance 1' was suspended due to ORA-01631: max # extents (2) reached in table SCOTT.TEST_RESUMABLE
***
statement in resumable session 'User SYSTEM(5), Session 8, Instance 1' was suspended due to ORA-01652: unable to extend temp segment by 32 in tablespace TEMP_TS
***
statement in resumable session 'User SCOTT(54), Session 9, Instance 1' was suspended due to ORA-01653: unable to extend table SCOTT.TEST_RESUMABLE by 256 in tablespace USERS
***
statement in resumable session 'User SCOTT(34), Session 8, Instance 1' was suspended due to ORA-01654: unable to extend index SCOTT.SYS_IOT_TOP_27956 by 8 in tablespace PERM_DICT_2K
***
statement in resumable session 'User SYSTEM(5), Session 11, Instance 1' was suspended due to ORA-01658: unable to create INITIAL extent for segment in tablespace LMT_1
***
statement in resumable session 'User SYSTEM(5), Session 11, Instance 1' was suspended due to ORA-01659: unable to allocate MINEXTENTS beyond 42 in tablespace LMT_1
3.7 Other messages in alert.log:
***
Wed Mar 14 10:43:52 2001
statement in resumable session 'User SCOTT(54), Session 9, Instance 1' was aborted
相关推荐
python库。 资源全名:resumable-urlretrieve-0.1.6.tar.gz
前端项目-resumable.js,通过HTML5文件API提供多个同时、稳定、容错和可恢复/可重启上传的javascript库。
使用Google Apps脚本的Web Apps断点续传消息 使用此功能时,可以上传大文件。 您也可以使用此js库。概述这是一个示例脚本,用于使用Google Apps脚本(GAS)在Web Apps上上传大文件(> 50 MB)。 可恢复的上载方法...
使用 resumable.js 上传文件的 Flask 应用程序。 这是一个例子。 它可能不应该按原样使用。 贡献 分叉吧 创建您的功能分支( git checkout -b my-new-feature ) 提交您的更改( git commit -am 'Added some ...
如果您想从一个域加载 resumable.js 库并将您的 Node.js 驻留在另一个域上,您必须允许来自 '*' 的 'Access-Control-Allow-Origin'。 请记住,启用此功能存在一些潜在的安全风险。 如果你还想实现跨域上传,打开 app...
PHP+Resumable.js分片上传,不限制上传文件类型
什么是Resumable.js Resumable.js是一个JavaScript库,可通过提供多个同时,稳定和可恢复的上载。 该库旨在将容错功能引入通过HTTP上传大文件的过程。 这是通过将每个文件分成小块来完成的。 然后,每当块的上载...
资源来自pypi官网。 资源全名:s3resumable-0.0.3.tar.gz
资源来自pypi官网。 资源全名:django-resumable-0.1.1.tar.gz
1Document No: N4286Supersedes: N4134Date: 2014-11-18Reply to: Gor Nishanov (gorn@microsoft.com), Jim Radigan (jradigan@microsoft.com)Resumable Functions (revision 3) Contents Revisions and History ....
资源来自pypi官网。 资源全名:google-resumable-media-0.2.3.tar.gz
可恢复的http下载(WIP) 可恢复的http下载(er) api 安装 使用可以: npm install @ironsource/rhd 执照 :copyright:ironSource ltd
tus-resumable-upload-protocol:用于可恢复文件上传的开放协议
例如: var resumable = require('resumable-eval')var session;(function() { var x = 1 session = eval(resumable) // Save the function scope})()// Interact with the saved scopesession .eval('...
这是一个示例脚本,可使用Java和Java Apps Script(GAS)的异步过程的可恢复上传,在侧边栏,Google Docs和Web Apps的对话框的侧边栏上上传多个大文件(> 50 MB)。 演示版 这是此脚本的演示。 作为演示,它将5个...
开始git clone https://github.com/spencercarli/meteor-file-upload-example.git cd meteor-file-upload-example && meteor 使用的包笔记/问题Resumable.js可能会在您的控制台中导致404 (Not Found)错误。...
谷歌师兄的leetcode刷题笔记gcs-resumable-upload 使用内置的可恢复行为将文件上传到 Google Cloud Storage $ npm install gcs-resumable-upload const { upload } = require ( 'gcs-resumable-upload' ) ; const fs...
FileCopyPlus是一个小的实用程序,可以复制文件并保持当前状态。 如果复制由于任何原因被中断,只需重复执行该命令即可轻松恢复。 未来的改进可能包括多文件复制等。
断言断言 断言替换以继续在调试器中执行 在任何大型应用程序中,有时会发生某些断言导致您当前不在意的代码失败,并且阻止整个团队运行该应用程序直到问题解决为止并不是最佳的工作流程。 因此,我们通常最终将执行...
可恢复pp 在C ++中实现可恢复Lambda的预处理器