Query on Change Data Capture

Hi,
A small clarification on oracle CDC(change data capture),if the CDC is down for 6 hours due to some issues how do I capture all the source transactions into CDC views during this window?
Just doing a purge and restarting the CDC Subscriber would solve the above scenario?
Thanks

Oracle CDC is all about capturing changes in DB tables and the changes are stored in special Oracle tables. There are two modes of CDC operation: asynchronous (based on Java) or synchronous (based on DB triggers, more performance overhead).
Check
http://docs.oracle.com/cd/B13789_01/server.101/b10736/cdc.htm#i1025409
http://docs.oracle.com/cd/E14571_01/integrate.1111/e12643/data_capture.htm

Similar Messages

  • Error While enahling CDC(Change data capture) on Table.

    I am enabling Change data capture (CDC) on SQL server 2012 Enterprise edition(11.0.2100.60)
    . I am able to enable it on Database level with below SQL, but failed to enable on Table level.
    Use DatabaseName
    GO
    Exec sys.sp_cdc_enable_db 
    GO
    EXEC sys.sp_cdc_enable_table @source_schema = N'dbo',
                @source_name = N'TableName', @role_name = NULL
    GO
    Got Error like,
    'msg 22832, Level 16, State 1, Procedure sp_cdc_enable_table_internal, Line 623
    Could not update the metadata that indicates table [dbo].[TableName] is enabled for Change Data Capture. 
    The failure occurred when executing the command '[sys].[sp_cdc_add_job] @job_type = N'capture''. 
    The error returned was 22836: 'Could not update the metadata for database DatabaseName to indicate that a Change Data Capture job has been added. 
    The failure occurred when executing the command 'sp_add_jobstep_internal'. 
    The error returned was 14234: 'The specified '@server' is invalid (valid values are returned by sp_helpserver).'. 
    Use the action and error to determine the cause of the failure and resubmit the request.'. 
    Use the action and error to determine the cause of the failure and resubmit the request.'
    Would anyone help me to out of this?
    Thanks in advance..!!

    Related thread:
    http://social.technet.microsoft.com/Forums/sqlserver/en-US/fa0c2a52-63b5-4a39-9f35-fe6f0eb21d1d/change-data-capture-on-table?forum=sqldatawarehousing
    Make sure SQL Server Agent is running.
    Kalman Toth Database & OLAP Architect
    SQL Server 2014 Design & Programming
    New Book / Kindle: Exam 70-461 Bootcamp: Querying Microsoft SQL Server 2012

  • Upgrade of Database with Oracle Change Data Capture

    Hello,
    We are upgrading and moving our database to a different server.
    The move is from 10G R1 database on Solaris to 11G R2 on Linux.
    Our database uses Oracle Change Data Capture.
    What is the best way to perform this migration? Unlike in the approach below, ideally, it would be without any manual steps to drop and recreate CDC subscriptions, change tables, etc.
    Thanks.
    Considerations for Exporting and Importing Change Data Capture Objects
    http://docs.oracle.com/cd/B13789_01/server.101/b10736/cdc.htm#i1027532
    Starting in Oracle Databse 10g, Oracle Data Pump is the supported export and import utility for Change Data Capture. Change Data Capture change sources, change sets, change tables, and subscriptions are exported and imported by the Oracle Data Pump expdp and impdp commands with the following restrictions:
    After a Data Pump full database import operation completes for a database containing AutoLog Change Data Capture objects, the following steps must be performed to restore these objects:
    1. The publisher must manually drop the change tables with the SQL DROP TABLE command. This is needed because the tables are imported without the accompanying Change Data Capture metadata.
    2. The publisher must re-create the AutoLog change sources, change sets, and change tables using the appropriate DBMS_CDC_PUBLISH procedures.
    3. Subscribers must re-create their subscriptions to the AutoLog change sets.

    Hello,
    I opened SR with Oracle Support, they are suggesting to perform full database import/export
    Change Data Capture change sources, change sets, change tables, and subscriptions are exported and imported by the Oracle Data Pump expdp and impdp commands with the following restrictions.
    Change Data Capture objects are exported and imported only as part of full database export and import operations (those in which the expdp and impdb commands specify the FULL=y parameter). Schema-level import and export operations include some underlying objects (for example, the table underlying a change table), but not the Change Data Capture metadata needed for change data capture to occur."
    CDC has different implementation methods:
    You may use the below query to determine-
    select SOURCE_NAME, SOURCE_DESCRIPTION, CREATED, SOURCE_TYPE, SOURCE_DATABASE, SOURCE_ENABLED from change_sources;
    – Synchronous CDC: with this implementation method you capture changes
    synchronously on the source database into change tables. This method uses
    internal database triggers to enable CDC. Capturing the change is part of the
    original transaction that introduces the change thus impacting the performance
    of the transaction.
    – Asynchronous Autolog CDC: this implementation method requires a staging
    database separate from the source database. Asynchronous Autolog CDC uses
    the database's redo transport services to transport redo log information from
    the source database to the staging database1. Changes are captured at the
    staging database. The impact to the source system is minimal, but there is some
    latency between the original transaction and the change being captured.
    As suggested in the document-
    Change Data Capture objects are exported and imported only as part of full database export and import operations (those in which the expdp and impdb commands specify the FULL=y parameter). Schema-level import and export
    operations include some underlying objects (for example, the table underlying a change table), but not the Change Data Capture metadata needed for change data capture to occur.
    ■ AutoLog change sources, change sets, and change tables are not supported.
    Starting in Oracle Database 10g, Oracle Data Pump is the supported export and import utility for Change Data Capture.
    Re-Creating AutoLog Change Data Capture Objects After an Import Operation
    http://docs.oracle.com/cd/B19306_01/server.102/b14223/cdc.htm#i1027532
    After a Data Pump full database import operation completes for a database containing AutoLog Change Data Capture objects, the following steps must be performed to restore these objects:
    a. The publisher must manually drop the database objects underlying AutoLog Change Data Capture objects.
    b. The publisher must re-create the AutoLog change sources, change sets, and change tables using the appropriate DBMS_CDC_PUBLISH procedures.
    c. Subscribers must re-create their subscriptions to the AutoLog change sets.

  • Change Data Capture, insert+delete instead of update

    Hello everyone,
    I'm having an odd issue, that I need some help understanding.  I've got a number of tables enabled for Change Data Capture, but I've noticed some behavior that doesn't make sense.
    I am utilizing CDC to populate an ODS via SSIS packages, and have noticed a few instances where I'm getting a delete operation come through, but the source record still exists.  In the source system, I can query 'cdc.fn_cdc_get_net_changes_...'
    and see combinations of 1 (delete) and 4 (update new) for the __$operation.
    __$start_lsn, __$operation, TableId, ...
    0x000BB75700002F250005, 1, 1938241
    0x000BB75700002F250005, 4, 1938241
    Also, if I query the cdc.<Table>_CT table directly, I see pairs of 1 and 2 (insert) for the same __$start_lsn and __$seqval.  How can this happen?  If I get *net* changes, shouldn't I only get one record back per the primary
    key of the source table?
    __$start_lsn, __$seqval, __$operation, __$update_mask, TableId, ...
    0x000BB75700002E7C0005, 0x000BB75700002E7C0003, 1, 0x0FFF, 1938241
    0x000BB75700002E7C0005, 0x000BB75700002E7C0003, 2, 0x0FFF, 1938241
    0x000BB75700002F250005, 0x000BB75700002F250003, 1, 0x0FFF, 1938241
    0x000BB75700002F250005, 0x000BB75700002F250003, 2, 0x0FFF, 1938241
    Let me say, I've got a trace going to see if I can find the command(s) that is causing the duplicate results, but has anyone ever seen this before? 
    Thanks in advance for your time and help!
    Jarret

    This is called a deffered update. It is the way that some tables are updated - ie a delete followed by an insert.
    See if the behavior still occurs when using trace flag 8201, ie
    DBCC TRACEON (8207, -1)
    looking for a book on SQL Server 2008 Administration?
    http://www.amazon.com/Microsoft-Server-2008-Management-Administration/dp/067233044X looking for a book on SQL Server 2008 Full-Text Search?
    http://www.amazon.com/Pro-Full-Text-Search-Server-2008/dp/1430215941

  • Change Data Capture (CDC) - Best Approach

    Hi,
    I am new to BODI and currently trying to design a change data capture approach.
    In other ETL tools i have used, the last session run timestamp is stored as a parameter and can be called within a mapping. So the mapping updates this parameter everytime it runs. Therefore when implementing CDC the load_date on the table has to be compared to this parameter.
    Is there a similar concept in BODI?
    I appreciate your help.
    Thanks
    Azeem

    Yes, there is such a concept, you have to build it yourself. e.g. https://wiki.sdn.sap.com:443/wiki/display/BOBJ/Inititialize-End+Script
    When you use a CDC enabled datastore however, the database wants to keep track of the data read, that's part of their CDC API. So it is not DI is querying all changes since yesterday, it is a "select * from CDC table" and the database returns just the rows since the last read. Push vs. Pull.

  • Change Data Capture,Change Tables

    Hi,
    We installed Change Data Capture in our DB (10gR2),however there is a problem with change tables.Change tables are being cleaned somehow.According to text quoted below,the job which is cleaning change tables is cdc$_default_purge_job.However
    select log_date
    +, job_name+
    +, status+
    from dba_scheduler_job_log
    where job_name='CDC$_DEFAULT_PURGE_JOB';
    results no data. Also this morning i came across that data cleansing again, and run the query below.And again no result.
    select job_name
    +, session_id+
    +, running_instance+
    +, elapsed_time+
    +, cpu_used+
    from dba_scheduler_running_jobs;
    /*We didn't even use DBMS_SCHEDULER.SET_ATTRIBUTE procedure so far*/
    What is cleaning change tables and how can i control it?
    Tnx in advance
    Quotation:
    Change Data Capture creates a purge job using the
    DBMS_SCHEDULER package (which runs under the account of the publisher who created the first change table). This purge job calls the
    DBMS_CDC_PUBLISH.PURGE procedure to remove data that subscribers are no longer using from the change tables. This job has the name
    cdc$_default_purge_job. By default, this job runs every 24 hours. You can change the schedule of this job using
    DBMS_SCHEDULER.SET_ATTRIBUTE and set the
    repeat_interval attribute. You can verify or modify any other attributes with the
    DBMS_SCHEDULER package.

    Setting up CDC is a fairly complex process with different options. Setting just the filter in OWB is only a very small part.
    There is a blog post below on how to use code templates to do CDC which gives some insight;
    http://www.rittmanmead.com/2009/10/changed-data-capture-and-owb11gr2/
    Plus and older one illustrating how to use Oracle logs;
    http://www.rittmanmead.com/2006/04/asynchronous-hotlog-distributed-change-data-capture-and-owb-paris/
    Cheers
    David

  • Enabling Change data capture on database

    While Enabling CDC on database I am getting below error, Can any body help me please... 
    Msg 22830, Level 16, State 1, Procedure sp_cdc_enable_db_internal, Line 193
    Could not update the metadata that indicates database edFusionODS is enabled for Change Data Capture. The failure occurred when executing the command 'SetCDCTracked(Value = 1)'. The error returned was 15404: 'Could not obtain information about Windows NT
    group/user 'CSD\bhaskary', error code 0x6e.'. Use the action and error to determine the cause of the failure and resubmit the request.
    Regards Vikas Pathak

    Where is this stored procedure State 1, Procedure sp_cdc_enable_db_internal
    try to open this procedure and see what it is doing, it seems it is not able to find the user CSD\bhaskary
    Mark ANSWER if this reply resolves your query, If helpful then VOTE HELPFUL
    INSQLSERVER.COM
    Mohammad Nizamuddin
    Hallo Mohammad,
    that's not a good advice because the stored procedure is a system procedure and not visible :).
    Try to find it in master or the database itself - it will fail!
    MCM - SQL Server 2008
    MCSE - SQL Server 2012
    db Berater GmbH
    SQL Server Blog (german only)
    Agree, this was just for troubleshooting and understanding the internals to see what might be causing the issue. 
    @Vikas: make sure you are connected in network (it is a domain account right), or you can try with local admin account see if it works fine
    Mark ANSWER if this reply resolves your query, If helpful then VOTE HELPFUL
    INSQLSERVER.COM
    Mohammad Nizamuddin

  • Change Data Capture option in v$option

    Hi
    when i run the following query :
    select parameter, value from v$option
    i notice that the change data capture is FALSE, does it mean that i can't use the change data capture.
    i want to make you know that we use an ORACLE 10gR2 standard edition.
    Best regards

    That is correct.
    Re: Only SOME Streams Features Available in Standard Edition?

  • Can you help me about change data captures in 10.2.0.3

    Hi,
    I made research about Change Data Capture and I try to implement it between two databases for two small tables in 10g release 2.MY CDC implementation uses archive logs to replicate data.
    Change Data Capture Mode Asynchronous autolog archive mode..It works correctly( except for ddl).Now I have some questions about CDC implementation for large tables.
    I have one senario to implement but I do not find exactly how can I do it correctly.
    I have one table (name test) that consists of 100 000 000 rows , everyday 1 000 000 transections occurs on this table and I archive the old
    data more than one year manually.This table is in the source db.I want to replicate this table by using Change Data Capture to other stage database.
    There are some questions about my senario in the following.
    1.How can I make the first load operations? (test table has 100 000 000 rows in the source db)
    2.In CDC, it uses change table (name test_ch) it consists of extra rows related to opearations for stage table.But, I need the orjinal table (name test) for applicaton works in stage database.How can I move the data from change table (test_ch) to orjinal table (name test) in stage database? (I don't prefer to use view for test table)
    3.How can I remove some data from change table(name test_ch) in stage db?It cause problem or not?
    4.There is a way to replicate ddl operations between two database?
    5. How can I find the last applied log on stage db in CDC?How can I find archive gap between source db and stage db?
    6.How can I make the maintanence of change tables in stage db?

    Asynchronous CDC uses Streams to generate the change records. Basically, it is a pre-packaged DML Handler that converts the changes into inserts into the change table. You indicated that you want the changes to be written to the original table, which is the default behavior of Streams replication. That is why I recommended that you use Streams directly.
    <p>
    Yes, it is possible to capture changes from a production redo/archive log at another database. This capability is called "downstream" capture in the Streams manuals. You can configure this capability using the MAINTAIN_* procedures in DBMS_STREAMS_ADM package (where * is one of TABLES, SCHEMAS, or GLOBAL depending on the granularity of change capture).
    <p>
    A couple of tips for using these procedures for downstream capture:
    <br>1) Don't forget to set up log shipping to the downstream capture database. Log shipping is setup exactly the same way for Streams as for Data Guard. Instructions can be found in the Streams Replication Administrator's Guide. This configuration has probably already been done as part of your initial CDC setup.
    <br>2) Run the command at the database that will perform the downstream capture. This database can also be the destination (or target) database where the changes are to be applied.
    <br>3) Explicitly define the parameters capture_queue_name and apply_queue_name to be the same queue name. Example:
    <br>capture_queue_name=>'STRMADMIN.STREAMS_QUEUE'
    <br>apply_queue_name=>'STRMADMIN.STREAMS_QUEUE'

  • Change Data Capture How to Tell which you are running Sync or Asyn

    Hi ,
    I am taking over a new system that has change data capture running, but Im really confused how this is running. Most of the CDC is set up using Sync(triggers), but I have about 5 tables that DO NOT have system generated triggers on them. I know Streams is NOT running/configured. I know Capture is not running/configured (because nothing in DBA_CAPTURE table). I can tell that these 5 tables are still getting updated in the change table schema. I can not figure out how the 5 tables that DO NOT have triggers on them are updating the change data set tables.
    I had thought the the 5 tables, must be configured with HOTLOG, but when I look at the CHANGE_SETS table they all (including these 5 tables) are set to CHANGE SOURCE NAME = SYNC SOUCE. I would expected that to be HOTLOG_SOURCE. So I "assume" they aren't set up using Asnc. hot log mode. So maybe the other Async modes are used, but not pushed to another database? Is that possible?
    Any other ideas on how to figure out how the CDC is set up for these 5 tables?
    thanks for your help.

    Thanks for the reply, but I think I must have not stated the problem clearly. I dont WANT to set the source I want to figure out how this CDC is working. I see ALL the sources are currently set to SYNC_SOURCE. Almost all of the tables are set up with system triggers on them, but 5 dont have system triggers, yet the source says SYNC_SOURCE. I did validate that the change tables are getting updated for these tables. my question is how are they getting updated? I "assume" since they dont have system triggers ont eh table they aren't synchoronus cdc (like the other tables are). yet the source says SYNC_SOURCE. What am I missing? How can I tell if the redo log is populating those changes tables? Im pretty sure it is (Becuase there aren't triggers or jobs running), but Im curious if there is a way to tell for sure.
    Thanks,

  • OWB Support for Change Data Capture

    Hi All,
    Has anyone got OWB working with the Change Data Capture feature in the Oracle 9i database? I understand that CDC works by publishing changes through an advanced queue, which in theory OWB 9.0.4 upwards can have as a data source, but there doesn't appear to be any explicit support within the GUI for capturing CDC changes.
    I'm also working on the assumption that we're talking about Synchronous CDC as found in 9i. 10g comes with Asynchronous CDC which I guess presents a different interface to the receiving program.
    So - is there any support for 9i Change Data Capture in OWB, and has anyone got this to work in practice?
    thanks
    Mark

    Mark,
    There is currently no explicit support for the 9i CDC. You can use Advanced Queues to propagate the changes, but you will have to custom-build the capture infrastructure on the source side (set up the CDC, enqueue the changes in the appropriate form into the AQ etc.)
    OWB will explicitly support CDC (10g async, which is the least invasinve method) in our next major release currently scheduled to be release in November of this year.
    Regards:
    Igor

  • Using Change Data Capture in SSIS - how to handle schema changes

    I was asked to consider change data capture for a database recently.  I can see that from the database perspective, its quite nice.  When I considered how I'd do this in SSIS, it seemed pretty obvious that I might have a problem, but I wanted to
    confirm here.
    The database in question changes the schema about once per month in production.  We have a lot of controls in our environment, so everytime a tables schema is changed, I'd have to do a formal change request to deal with a change to my code
    base, in this case my SSIS package; it can be a lot of work.   If I wanted to track the data changes for inserts, update and deletes using an SSIS package to send the data changes to the destination tables, would I have to change my SSIS package
    with every schema change, or is there a way to keep the exact same SSIS package with CDC without having to change it every month?
    Thanks,
    Keith

    Hi Keith,
    What is your exact requirement?
    If you want to capture the object_created, object_deleted or object_altered informations, you can try using
    Extended events .
    As mentioned in your OP:
    "If I wanted to track the data changes for inserts, update and deletes using an SSIS package to send the data changes to the destination tables, would I have to change my SSIS package with
    every schema change, or is there a way to keep the exact same SSIS package with CDC without having to change it every month?"
    If you want the databases in two different environments to be in sync, then take periodic
    backup and apply(restore) on the another destination DB.
    (or)
    you can also try with
    SQL Server replication if it is really needed.
    As I understand from your description, if you want the table data & schema to be in sync in two different database:
    then create job [script that will drop the destination DB table & create the copy of source DB table ] as per your requirement:
    --CREATE DATABASE db1
    --CREATE DATABASE db2
    USE db1
    GO
    CREATE TABLE tbl(Id INT)
    USE db2
    GO
    IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE name = 'tb1' and TYPE = 'u')
    DROP TABLE dbo.tb1
    SELECT * INTO db2.dbo.tb1 FROM db1.dbo.tbl
    SELECT * FROM dbo.tb1
    --DROP DATABASE db1,db2
    sathya - www.allaboutmssql.com ** Mark as answered if my post solved your problem and Vote as helpful if my post was useful **.

  • CDC (Change Data Capture) with 2 Tables

    Hello,
    i want to use the change data capture for the typical Data Warehousing progress (bring the new or updatet table from source to the staging area)
    So i have implemented a mapping with to tables. The source table is S_Account, the target or staging table is W_Account_DS.
    I have connected/mapped the tables and in the next step i goes into property inspector of W_ACCOUNT_DS into the Area Change Data Capture --> Change Data Capture Filter and put into the follow expression Builder
    Select *
    from S_Acccount
    where INOUTGRP1.LAST_UPD_DT = CURRENT_DATE (<-- Validation Succesful)
    and the next Step i make Enabeled is true in the Change Data Capture Area. So i think it should ready for one test case.
    I set in SQL Developer with an update statement the LAST_UPD_DT at 28.03.2012 in this case he should not update/insert anything, right? But he insert the full table.
    I set in SQL Developer with an update statement the LAST_UPD_DT by 2 Columms to 28.03.2012 in this case he should update he should update the full table - 2 columns with the date 28.03.2012, right?
    So what make i wrong or have i forgotten anything? (must set keys by the tables? I think not! If yes why?)
    Must i set anything properties else? Why doesnt´work it?
    I look forward for your replies :)

    Setting up CDC is a fairly complex process with different options. Setting just the filter in OWB is only a very small part.
    There is a blog post below on how to use code templates to do CDC which gives some insight;
    http://www.rittmanmead.com/2009/10/changed-data-capture-and-owb11gr2/
    Plus and older one illustrating how to use Oracle logs;
    http://www.rittmanmead.com/2006/04/asynchronous-hotlog-distributed-change-data-capture-and-owb-paris/
    Cheers
    David

  • Change Data Capture: Unsubscribed column results in new change set record

    I have an installation using Oracle 11g Change Data Capture in synchronous mode. As of writing, I have a single publication and a single subscription. The setup is pretty basic:
    PUB_TABLE
    PUB_ID*
    PUB_NAME*
    PUB_USELESS_FLAG
    * columns are included in both the PUBLICATION and the SUBSCRIPTION. The final column is of no consequence and is excluded from both the PUBLICATION and SUBSCRIPTION.
    My problem is that any time PUB_USELESS_FLAG gets updated (even if no other columns are changed), a record is written to not only the change table but the change table view. The table in question has a significant number of transactions logged against it, but only a subset of those changes are of note to the subscriber (which is why the subscriber does not listen to every column). However, since the subscription is receiving records for every change to the source table, the result is an enormous amount of overhead as the subscriber is forced to sift through numerous records that are of no consequence.
    I read the Change Data Capture manual for Oracle 11g; I could not find any reference to the observed functionality. Is this a consequence of using synchronous vs. asynchronous modes of capture? Is there an option to only receive changes on subscribed columns?
    Thanks in advance

    Bring this to the top because I have the same question. This website (http://www.bikinfo.com/HTML/CDC/CDC_Article.html) makes it sound like this problem is unavoidable.
    Edited by: nik_m on Nov 10, 2011 8:04 AM
    Edited by: nik_m on Nov 10, 2011 8:05 AM

  • Change data capture from DRM to Target system

    Hi All,
    I have a situation where client wants Hyperion DRM to be single source of truth and pass Hierarchy information from DRM to subscribing target systems. There are 3 target systems and the database is MS SQL server.
    Now in the export profile ,I am using database export where I have mapped the DRM node/properties to target table's columns. For the initial load it is a new record in the database and the data flows as it is a 1:1 mapping, however if few of the property value changes and I wan to update only the corresponding columns what will the architecture for push the change data in to target.
    Can we achieve this without have any staging tables and capture the change data ?
    Do need to use ODI ?
    Does DRM has any work around without putting extra effort hrs by building CDC tables ?
    I will really appreciate your suggestions and comments on this......

    Thanks for the quick reply. However I was trying to resolve the Change data capture in Hierarcy through as" Database Table" but it seems when we choose the DEVICE option as database in the target tab of export it can only export or insert new records into the tables but cannot update and existing record.
    PLease correct me if my understnding is wrong ?????

Maybe you are looking for

  • Why is my MacBook Pro suddenly running as slow as syrup?

    Hello, I read some of the replies to the other posts about MacBook pro suddenly running slowly, and I am about to try a repair and do a few other things, but I was wondering if anyone could tell me if my etrecheck.com details offer a hint as to why i

  • Partial Payment of CM with "V" in invoice reference

    Hi Experts, Can you please share your insights as to why SAP doesn't allow partial payment/clearing of CMs with "V" in invoice reference when "Include invoice reference" is activated in the editing options of processing open items.  I've read that th

  • Code eo send e-mail to multiple addresses

    Hi, I need to send an e-mail to multiple addresses. Can the Function module SO_NEW_DOCUMENT_SEND_API1 be used to send email to MULTIPLE e-mail addresses ?

  • External Material for Subcontracting

    How do you manage material from customer that you just add a process to it? Right now we do not enter the material in our stock and just make a service sales order type? Is there a best practice process for this scenario? Thank you, Carlos

  • ASM vs RAID5/RAID10

    Is there any reason to move to ASM when we've currently got our SAN configured at RAID10? I'm trying to find the pros and cons, and so far the documentation's vague when trying to convince you to move to ASM when you've already got striping and mirro