[jira] [Updated] (HIVE-4629) HS2 should support an API to retrieve query logs
[ https://issues.apache.org/jira/browse/HIVE-4629?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Lefty Leverenz updated HIVE-4629: - Labels: TODOC14 (was: ) > HS2 should support an API to retrieve query logs > > > Key: HIVE-4629 > URL: https://issues.apache.org/jira/browse/HIVE-4629 > Project: Hive > Issue Type: Sub-task > Components: HiveServer2 >Reporter: Shreepadma Venugopalan >Assignee: Dong Chen > Labels: TODOC14 > Fix For: 0.14.0 > > Attachments: HIVE-4629-no_thrift.1.patch, HIVE-4629.1.patch, > HIVE-4629.2.patch, HIVE-4629.3.patch.txt, HIVE-4629.4.patch, > HIVE-4629.5.patch, HIVE-4629.6.patch, HIVE-4629.7.patch, HIVE-4629.8.patch, > HIVE-4629.9.patch > > > HiveServer2 should support an API to retrieve query logs. This is > particularly relevant because HiveServer2 supports async execution but > doesn't provide a way to report progress. Providing an API to retrieve query > logs will help report progress to the client. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (HIVE-4629) HS2 should support an API to retrieve query logs
[ https://issues.apache.org/jira/browse/HIVE-4629?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Brock Noland updated HIVE-4629: --- Attachment: HIVE-4629.9.patch I have committed this to trunk! Thank you Dong! This is truly a long awaited contribution! FYI - I had to do one trivial rebase in SessionManager when committing so I've uploaded that patch as v9. I verified it does not break the build. > HS2 should support an API to retrieve query logs > > > Key: HIVE-4629 > URL: https://issues.apache.org/jira/browse/HIVE-4629 > Project: Hive > Issue Type: Sub-task > Components: HiveServer2 >Reporter: Shreepadma Venugopalan >Assignee: Dong Chen > Fix For: 0.14.0 > > Attachments: HIVE-4629-no_thrift.1.patch, HIVE-4629.1.patch, > HIVE-4629.2.patch, HIVE-4629.3.patch.txt, HIVE-4629.4.patch, > HIVE-4629.5.patch, HIVE-4629.6.patch, HIVE-4629.7.patch, HIVE-4629.8.patch, > HIVE-4629.9.patch > > > HiveServer2 should support an API to retrieve query logs. This is > particularly relevant because HiveServer2 supports async execution but > doesn't provide a way to report progress. Providing an API to retrieve query > logs will help report progress to the client. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (HIVE-4629) HS2 should support an API to retrieve query logs
[ https://issues.apache.org/jira/browse/HIVE-4629?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Brock Noland updated HIVE-4629: --- Resolution: Fixed Fix Version/s: 0.14.0 Status: Resolved (was: Patch Available) > HS2 should support an API to retrieve query logs > > > Key: HIVE-4629 > URL: https://issues.apache.org/jira/browse/HIVE-4629 > Project: Hive > Issue Type: Sub-task > Components: HiveServer2 >Reporter: Shreepadma Venugopalan >Assignee: Dong Chen > Fix For: 0.14.0 > > Attachments: HIVE-4629-no_thrift.1.patch, HIVE-4629.1.patch, > HIVE-4629.2.patch, HIVE-4629.3.patch.txt, HIVE-4629.4.patch, > HIVE-4629.5.patch, HIVE-4629.6.patch, HIVE-4629.7.patch, HIVE-4629.8.patch, > HIVE-4629.9.patch > > > HiveServer2 should support an API to retrieve query logs. This is > particularly relevant because HiveServer2 supports async execution but > doesn't provide a way to report progress. Providing an API to retrieve query > logs will help report progress to the client. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (HIVE-4629) HS2 should support an API to retrieve query logs
[ https://issues.apache.org/jira/browse/HIVE-4629?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dong Chen updated HIVE-4629: Attachment: HIVE-4629.8.patch Update patch V8 to address the precious comments from [~thejas], [~cwsteinbach], and [~brocknoland]. Thanks very much for your review to make this patch better. And rebase it from latest trunk. > HS2 should support an API to retrieve query logs > > > Key: HIVE-4629 > URL: https://issues.apache.org/jira/browse/HIVE-4629 > Project: Hive > Issue Type: Sub-task > Components: HiveServer2 >Reporter: Shreepadma Venugopalan >Assignee: Dong Chen > Attachments: HIVE-4629-no_thrift.1.patch, HIVE-4629.1.patch, > HIVE-4629.2.patch, HIVE-4629.3.patch.txt, HIVE-4629.4.patch, > HIVE-4629.5.patch, HIVE-4629.6.patch, HIVE-4629.7.patch, HIVE-4629.8.patch > > > HiveServer2 should support an API to retrieve query logs. This is > particularly relevant because HiveServer2 supports async execution but > doesn't provide a way to report progress. Providing an API to retrieve query > logs will help report progress to the client. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (HIVE-4629) HS2 should support an API to retrieve query logs
[ https://issues.apache.org/jira/browse/HIVE-4629?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Thejas M Nair updated HIVE-4629: Attachment: HIVE-4629.7.patch HIVE-4629.7.patch - Dong's patch from reviewboard, just to know how it is doing wrt tests. [~dongc] Looking forward to updated patch from you! > HS2 should support an API to retrieve query logs > > > Key: HIVE-4629 > URL: https://issues.apache.org/jira/browse/HIVE-4629 > Project: Hive > Issue Type: Sub-task > Components: HiveServer2 >Reporter: Shreepadma Venugopalan >Assignee: Dong Chen > Attachments: HIVE-4629-no_thrift.1.patch, HIVE-4629.1.patch, > HIVE-4629.2.patch, HIVE-4629.3.patch.txt, HIVE-4629.4.patch, > HIVE-4629.5.patch, HIVE-4629.6.patch, HIVE-4629.7.patch > > > HiveServer2 should support an API to retrieve query logs. This is > particularly relevant because HiveServer2 supports async execution but > doesn't provide a way to report progress. Providing an API to retrieve query > logs will help report progress to the client. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (HIVE-4629) HS2 should support an API to retrieve query logs
[ https://issues.apache.org/jira/browse/HIVE-4629?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Brock Noland updated HIVE-4629: --- Assignee: Dong Chen (was: Shreepadma Venugopalan) > HS2 should support an API to retrieve query logs > > > Key: HIVE-4629 > URL: https://issues.apache.org/jira/browse/HIVE-4629 > Project: Hive > Issue Type: Sub-task > Components: HiveServer2 >Reporter: Shreepadma Venugopalan >Assignee: Dong Chen > Attachments: HIVE-4629-no_thrift.1.patch, HIVE-4629.1.patch, > HIVE-4629.2.patch, HIVE-4629.3.patch.txt, HIVE-4629.4.patch, > HIVE-4629.5.patch, HIVE-4629.6.patch > > > HiveServer2 should support an API to retrieve query logs. This is > particularly relevant because HiveServer2 supports async execution but > doesn't provide a way to report progress. Providing an API to retrieve query > logs will help report progress to the client. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (HIVE-4629) HS2 should support an API to retrieve query logs
[ https://issues.apache.org/jira/browse/HIVE-4629?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dong Chen updated HIVE-4629: Attachment: HIVE-4629.6.patch Update the patch (v6) to trigger test. It addresses review comments and fixes one failed case related with this patch in HIVE QA. > HS2 should support an API to retrieve query logs > > > Key: HIVE-4629 > URL: https://issues.apache.org/jira/browse/HIVE-4629 > Project: Hive > Issue Type: Sub-task > Components: HiveServer2 >Reporter: Shreepadma Venugopalan >Assignee: Shreepadma Venugopalan > Attachments: HIVE-4629-no_thrift.1.patch, HIVE-4629.1.patch, > HIVE-4629.2.patch, HIVE-4629.3.patch.txt, HIVE-4629.4.patch, > HIVE-4629.5.patch, HIVE-4629.6.patch > > > HiveServer2 should support an API to retrieve query logs. This is > particularly relevant because HiveServer2 supports async execution but > doesn't provide a way to report progress. Providing an API to retrieve query > logs will help report progress to the client. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (HIVE-4629) HS2 should support an API to retrieve query logs
[ https://issues.apache.org/jira/browse/HIVE-4629?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dong Chen updated HIVE-4629: Attachment: HIVE-4629.5.patch > HS2 should support an API to retrieve query logs > > > Key: HIVE-4629 > URL: https://issues.apache.org/jira/browse/HIVE-4629 > Project: Hive > Issue Type: Sub-task > Components: HiveServer2 >Reporter: Shreepadma Venugopalan >Assignee: Shreepadma Venugopalan > Attachments: HIVE-4629-no_thrift.1.patch, HIVE-4629.1.patch, > HIVE-4629.2.patch, HIVE-4629.3.patch.txt, HIVE-4629.4.patch, HIVE-4629.5.patch > > > HiveServer2 should support an API to retrieve query logs. This is > particularly relevant because HiveServer2 supports async execution but > doesn't provide a way to report progress. Providing an API to retrieve query > logs will help report progress to the client. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (HIVE-4629) HS2 should support an API to retrieve query logs
[ https://issues.apache.org/jira/browse/HIVE-4629?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dong Chen updated HIVE-4629: Attachment: HIVE-4629.4.patch A patch HIVE-4629.4.patch is attached, which trying to address the comments in this jira and review board, to support an API to retrieve query logs. This patch is developed based on HIVE-4629.3.patch code in this jira and refer to the method of saving operation log to files in HIVE-5924. RB entry: https://reviews.apache.org/r/24293/ The design and changes are as follows: 1. Reuse FetchResults() API and add a TFetchType in the param. The type could be QUERY_OUTPUT and LOG. 2. Original LogManager code is modified and moved in OperationManager. Now OM is responsible for dispatching log updating and fetching request. 3. OperatinLog class wraps the actual operation log files. Each Operation create, register, and unregister the OperationLog around its run() method. 4. Make OperationLog to ThreadLocal, so that we don't have to bind and maintain them with threads in some Maps. 5. The actual operation log files are maintained in the hierarchy like: rootDir/sessionDir/operationLogFiles The rootDir is configurable, created when SessionManager init, deleted when stop. The sessionDir is created when session is opened, and deleted during closing. The operationLogFiles is create before operation runs, and deleted when it is closed. > HS2 should support an API to retrieve query logs > > > Key: HIVE-4629 > URL: https://issues.apache.org/jira/browse/HIVE-4629 > Project: Hive > Issue Type: Sub-task > Components: HiveServer2 >Reporter: Shreepadma Venugopalan >Assignee: Shreepadma Venugopalan > Attachments: HIVE-4629-no_thrift.1.patch, HIVE-4629.1.patch, > HIVE-4629.2.patch, HIVE-4629.3.patch.txt, HIVE-4629.4.patch > > > HiveServer2 should support an API to retrieve query logs. This is > particularly relevant because HiveServer2 supports async execution but > doesn't provide a way to report progress. Providing an API to retrieve query > logs will help report progress to the client. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (HIVE-4629) HS2 should support an API to retrieve query logs
[ https://issues.apache.org/jira/browse/HIVE-4629?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Navis updated HIVE-4629: Attachment: HIVE-4629.3.patch.txt > HS2 should support an API to retrieve query logs > > > Key: HIVE-4629 > URL: https://issues.apache.org/jira/browse/HIVE-4629 > Project: Hive > Issue Type: Sub-task > Components: HiveServer2 >Reporter: Shreepadma Venugopalan >Assignee: Shreepadma Venugopalan > Attachments: HIVE-4629-no_thrift.1.patch, HIVE-4629.1.patch, > HIVE-4629.2.patch, HIVE-4629.3.patch.txt > > > HiveServer2 should support an API to retrieve query logs. This is > particularly relevant because HiveServer2 supports async execution but > doesn't provide a way to report progress. Providing an API to retrieve query > logs will help report progress to the client. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (HIVE-4629) HS2 should support an API to retrieve query logs
[ https://issues.apache.org/jira/browse/HIVE-4629?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Navis updated HIVE-4629: Status: Patch Available (was: Open) Just rebased to trunk. Let this get in. > HS2 should support an API to retrieve query logs > > > Key: HIVE-4629 > URL: https://issues.apache.org/jira/browse/HIVE-4629 > Project: Hive > Issue Type: Sub-task > Components: HiveServer2 >Reporter: Shreepadma Venugopalan >Assignee: Shreepadma Venugopalan > Attachments: HIVE-4629-no_thrift.1.patch, HIVE-4629.1.patch, > HIVE-4629.2.patch, HIVE-4629.3.patch.txt > > > HiveServer2 should support an API to retrieve query logs. This is > particularly relevant because HiveServer2 supports async execution but > doesn't provide a way to report progress. Providing an API to retrieve query > logs will help report progress to the client. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (HIVE-4629) HS2 should support an API to retrieve query logs
[ https://issues.apache.org/jira/browse/HIVE-4629?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Carl Steinbach updated HIVE-4629: - Status: Open (was: Patch Available) > HS2 should support an API to retrieve query logs > > > Key: HIVE-4629 > URL: https://issues.apache.org/jira/browse/HIVE-4629 > Project: Hive > Issue Type: Sub-task > Components: HiveServer2 >Reporter: Shreepadma Venugopalan >Assignee: Shreepadma Venugopalan > Attachments: HIVE-4629.1.patch, HIVE-4629.2.patch, > HIVE-4629-no_thrift.1.patch > > > HiveServer2 should support an API to retrieve query logs. This is > particularly relevant because HiveServer2 supports async execution but > doesn't provide a way to report progress. Providing an API to retrieve query > logs will help report progress to the client. -- This message was sent by Atlassian JIRA (v6.1#6144)
[jira] [Updated] (HIVE-4629) HS2 should support an API to retrieve query logs
[ https://issues.apache.org/jira/browse/HIVE-4629?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Shreepadma Venugopalan updated HIVE-4629: - Attachment: HIVE-4629.2.patch > HS2 should support an API to retrieve query logs > > > Key: HIVE-4629 > URL: https://issues.apache.org/jira/browse/HIVE-4629 > Project: Hive > Issue Type: Sub-task > Components: HiveServer2 >Reporter: Shreepadma Venugopalan >Assignee: Shreepadma Venugopalan > Attachments: HIVE-4629.1.patch, HIVE-4629.2.patch, > HIVE-4629-no_thrift.1.patch > > > HiveServer2 should support an API to retrieve query logs. This is > particularly relevant because HiveServer2 supports async execution but > doesn't provide a way to report progress. Providing an API to retrieve query > logs will help report progress to the client. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (HIVE-4629) HS2 should support an API to retrieve query logs
[ https://issues.apache.org/jira/browse/HIVE-4629?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Shreepadma Venugopalan updated HIVE-4629: - Attachment: (was: HIVE-4629.1.patch) > HS2 should support an API to retrieve query logs > > > Key: HIVE-4629 > URL: https://issues.apache.org/jira/browse/HIVE-4629 > Project: Hive > Issue Type: Sub-task > Components: HiveServer2 >Reporter: Shreepadma Venugopalan >Assignee: Shreepadma Venugopalan > Attachments: HIVE-4629.1.patch, HIVE-4629-no_thrift.1.patch > > > HiveServer2 should support an API to retrieve query logs. This is > particularly relevant because HiveServer2 supports async execution but > doesn't provide a way to report progress. Providing an API to retrieve query > logs will help report progress to the client. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (HIVE-4629) HS2 should support an API to retrieve query logs
[ https://issues.apache.org/jira/browse/HIVE-4629?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Shreepadma Venugopalan updated HIVE-4629: - Attachment: HIVE-4629.1.patch > HS2 should support an API to retrieve query logs > > > Key: HIVE-4629 > URL: https://issues.apache.org/jira/browse/HIVE-4629 > Project: Hive > Issue Type: Sub-task > Components: HiveServer2 >Reporter: Shreepadma Venugopalan >Assignee: Shreepadma Venugopalan > Attachments: HIVE-4629.1.patch, HIVE-4629-no_thrift.1.patch > > > HiveServer2 should support an API to retrieve query logs. This is > particularly relevant because HiveServer2 supports async execution but > doesn't provide a way to report progress. Providing an API to retrieve query > logs will help report progress to the client. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (HIVE-4629) HS2 should support an API to retrieve query logs
[ https://issues.apache.org/jira/browse/HIVE-4629?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Shreepadma Venugopalan updated HIVE-4629: - Attachment: HIVE-4629-no_thrift.1.patch > HS2 should support an API to retrieve query logs > > > Key: HIVE-4629 > URL: https://issues.apache.org/jira/browse/HIVE-4629 > Project: Hive > Issue Type: Sub-task > Components: HiveServer2 >Reporter: Shreepadma Venugopalan >Assignee: Shreepadma Venugopalan > Attachments: HIVE-4629.1.patch, HIVE-4629-no_thrift.1.patch > > > HiveServer2 should support an API to retrieve query logs. This is > particularly relevant because HiveServer2 supports async execution but > doesn't provide a way to report progress. Providing an API to retrieve query > logs will help report progress to the client. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (HIVE-4629) HS2 should support an API to retrieve query logs
[ https://issues.apache.org/jira/browse/HIVE-4629?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Shreepadma Venugopalan updated HIVE-4629: - Attachment: HIVE-4629.1.patch > HS2 should support an API to retrieve query logs > > > Key: HIVE-4629 > URL: https://issues.apache.org/jira/browse/HIVE-4629 > Project: Hive > Issue Type: Sub-task > Components: HiveServer2 >Reporter: Shreepadma Venugopalan >Assignee: Shreepadma Venugopalan > Attachments: HIVE-4629.1.patch > > > HiveServer2 should support an API to retrieve query logs. This is > particularly relevant because HiveServer2 supports async execution but > doesn't provide a way to report progress. Providing an API to retrieve query > logs will help report progress to the client. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (HIVE-4629) HS2 should support an API to retrieve query logs
[ https://issues.apache.org/jira/browse/HIVE-4629?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Shreepadma Venugopalan updated HIVE-4629: - Status: Patch Available (was: In Progress) > HS2 should support an API to retrieve query logs > > > Key: HIVE-4629 > URL: https://issues.apache.org/jira/browse/HIVE-4629 > Project: Hive > Issue Type: Sub-task > Components: HiveServer2 >Reporter: Shreepadma Venugopalan >Assignee: Shreepadma Venugopalan > > HiveServer2 should support an API to retrieve query logs. This is > particularly relevant because HiveServer2 supports async execution but > doesn't provide a way to report progress. Providing an API to retrieve query > logs will help report progress to the client. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (HIVE-4629) HS2 should support an API to retrieve query logs
[ https://issues.apache.org/jira/browse/HIVE-4629?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Carl Steinbach updated HIVE-4629: - Component/s: HiveServer2 > HS2 should support an API to retrieve query logs > > > Key: HIVE-4629 > URL: https://issues.apache.org/jira/browse/HIVE-4629 > Project: Hive > Issue Type: Sub-task > Components: HiveServer2 >Reporter: Shreepadma Venugopalan >Assignee: Shreepadma Venugopalan > > HiveServer2 should support an API to retrieve query logs. This is > particularly relevant because HiveServer2 supports async execution but > doesn't provide a way to report progress. Providing an API to retrieve query > logs will help report progress to the client. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (HIVE-4629) HS2 should support an API to retrieve query logs
[ https://issues.apache.org/jira/browse/HIVE-4629?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Shreepadma Venugopalan updated HIVE-4629: - Issue Type: Sub-task (was: New Feature) Parent: HIVE-2935 > HS2 should support an API to retrieve query logs > > > Key: HIVE-4629 > URL: https://issues.apache.org/jira/browse/HIVE-4629 > Project: Hive > Issue Type: Sub-task >Reporter: Shreepadma Venugopalan >Assignee: Shreepadma Venugopalan > > HiveServer2 should support an API to retrieve query logs. This is > particularly relevant because HiveServer2 supports async execution but > doesn't provide a way to report progress. Providing an API to retrieve query > logs will help report progress to the client. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (HIVE-4629) HS2 should support an API to retrieve query logs
[ https://issues.apache.org/jira/browse/HIVE-4629?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Shreepadma Venugopalan updated HIVE-4629: - Issue Type: New Feature (was: Bug) > HS2 should support an API to retrieve query logs > > > Key: HIVE-4629 > URL: https://issues.apache.org/jira/browse/HIVE-4629 > Project: Hive > Issue Type: New Feature >Reporter: Shreepadma Venugopalan >Assignee: Shreepadma Venugopalan > > HiveServer2 should support an API to retrieve query logs. This is > particularly relevant because HiveServer2 supports async execution but > doesn't provide a way to report progress. Providing an API to retrieve query > logs will help report progress to the client. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira