Question about static properties in implementation (.m) file

I've been using some static properties in my implementation files so they can be accessed by class methods like so for example:
#import etc
static Class foo; // <-- Here is where I've been defining static properties
@implementation Bar
- init {
foo = [Class new]; // initialize property
+ getObject { // now any where else in my code I can use [Foo getObject]
return foo;
- dealloc {
[foo release];
I've been doing this so that in other classes, I can simply go like:
[Foo getObject]
Can someone give me some more details about what's going on here though? It's been working but I'm nervous because I don't know much about it.
ie. What kind of property is it? (nonatomic, retain)? Is this bad practice?
Thanks to anyone who can shed some light on this.

First off, it's not a property. It's a static variable. And the code you have isn't a good idea. Static variables should NOT be set via instance methods.
Think about the following code:
// In some other class
Bar x = [[Bar alloc] init];
Bar y = [[Bar alloc] init];
Think about what just happened. In the 'foo' class you have now created two 'foo' objects and the first one is now leaked.
The proper way to initialize static variables is with the 'initialize' class method. This is only ever called once, the first time the class is referenced.
static Class foo;
@implementation Bar
+ (void)initialize {
foo = [[Bar alloc] init];
- init {
// Do nothing with 'foo'
+ (Bar)getObject {
return foo;
- (void)dealloc {
// Do nothing with 'foo'
The only downside, sort of, is that 'foo' is never dealloc'ed except when the app exits. But this isn't typically a problem.

Similar Messages

  • A question about restoring from cold backup(control file backup not clear)

    Hi,
    I had another question about restoring the cold backup. My database is in noarchivelog mode and after taking a consistent cold backup, all I need to do is to restore the backup right? -Why I got this question is because: when I backup my control file to trace, I see statements like this:-----
    -- Commands to re-create incarnation table
    -- Below log names MUST be changed to existing filenames on
    -- disk. Any one log file from each branch can be used to
    -- re-create incarnation records.
    -- ALTER DATABASE REGISTER LOGFILE '/uo1/app1/arch1_1_647102958.dbf';
    -- Recovery is required if any of the datafiles are restored backups,
    -- or if the last shutdown was not normal or immediate.
    RECOVER DATABASE
    -- Database can now be opened normally.
    ALTER DATABASE OPEN;
    My database is in noarchivelog mode now so don't know why these statements (of register the logfile) is there in the backup of control file? so when I restore the cold backup of this database, it will still work correct? (there is no logfile I have only CRD files in cold backup -no archive log files.)
    thanks
    Nirav

    Thanks for your inputs! It is most useful to me.
    Regards
    Nirav

  • Three questions about removing a numbered Mail message file

    ClamXav, the anti-virus program, has found several old messages filed by Mail.app v4.4 that are infected with various exploits. Finder shows that the filenames for these messages are numbered, followed by the email file extension, like this: 359959.emlx
    Question 1: Can I simply delete these files individually via the Finder and do nothing else, calmly confident in the knowledge that Mail.app, robust as Apple engineers can make it, doesn't care a whit whether an individual mail file is there or not?
    Or
    Question 2: Do I have to locate them via Mail's interface and delete them from there because otherwise Mail.app, so fragile, will have a fit, die, explode or wither to a pathetic whimper of its former self because I had the temerity to delete a file without genuflecting and consulting it?
    Or
    Question 3: If I have to locate the files and delete them via Mail, how do I use the file name to point to a specific message in Mail's inscrutable interface?
    Thanks.

    I'd just delete them. However, if you're worried about it, just leave them alone. They can't hurt anything.

  • Question about "RE-COMPRESSION" of mpeg 4 files

    First off this is a great forum. It has answered many questions. This is my first post.
    This is my workflow.
    1. I have a massive library of Betacam tapes that I am archiving ( over 2000) average length 45 minutes)
    2. I capture them from a betacam deck, thru a canopus adcvc 110, at SD, No problems.
    3. I wind up with media files that are like 15 gigs. I have over 40 terabytes of external storage, I use firewire 800 (so far, so good)
    4. I then take the media files, drag them to the timeline, edit etc, add graphics from motion etc
    5. I then simply play the timeline via firewire to a dv, video deck, and send the tape to the tv station, they closed caption it and it hits the air
    (so life is great, this works perfect)
    Here comes the question
    1. After having done that, I use the "send to compressor" function, to generate an mpeg 4 file, which instead of 12 gigs is like less than one, it looks great.
    2. This file is then uploaded to an ftp site, given a description, and then put on the website for viewing or purchase.
    3, since I have like 2000 tapes, do the math, if each one takes 12 gigs....lots of drives.
    4. Most tapes are NOT edited for television broadcast, I just find a good in and out point for a fade, compress it, shoot it to ftp and im done.
    5. Recently I have begun deleting the 12 gig files, sine I have the messages in mpeg 4...to avoud buying several petabytes of storge.
    SOOOO
    After all that, here is my question.
    If I want to edit a program that I have in the archive, that the decision has been made to broadcsat for some reason, If I drag the MPEG$ file onto the timeline, edit it from a 50 minute down to a 28:30, drop in green screen cut aways, grapics, lower thirds animated transitions between clips, titles, etc...
    Render it.
    THEN play it directly from the timeline via firewire to the mini dv deck...
    How much quality will I lose on the base video, which is mpeg 4, as compared to the 12 gig media file?
    Does it "re- compress" in some way?
    should I just suck it up and pay for storage for the 12 gig files that probably will never use for broadcast?
    or can I use an MPEG 4 file as my "main video" and not come out looking like an amature moron?
    Does any of that make sense? or is it TMI from an idiot?
    I come from the analoge days, D-3's and D-5's, grass valley 200 switcher, pinnacle dve's, 18 Ikegamis shooting NFL football. Betacams, D-1's, sattelite uplinks. all in good old NTSC 525...
    So bear with an old man.
    Any assistance would be great.
    Can I edit using an MPEG4 file and not get burned?
    Be well all.
    Michael D, Fodor.
    heritagechristiancenter.com
    San diego.
    cya stay out of the heat...

    You probably won't have a huge loss in quality-- as you say yourself, the MPEG4 looks pretty good for it's file size. I won't get into a debate about whether or not it's the best option for archival, that's another thread.
    But as long as you're editing in FCP (7), you'll want to convert it to something else before importing. ProRes is a pretty standard choice. Otherwise it'll be nothing but pain. You can still archive in MPEG-4, but for those that you pull from the archive to re-broadcast, recompress them to ProRes.

  • Question about how Mac OS X stores file information for iMovie and iPhoto

    I'm relatively new to Macs (am using a 3yr old iMac and a new MBA running 10.6.4 and iLife 11) and I have this general question.
    I'm using the iMac for a lot of Movie projects and photos. I've very quickly filled up my 500Gb hard drive and I don't understand why other than this:
    I import a movie using iMovie and it's stored in an Events folder. I then make a project and it's stored in an Projects folder, I then share it to iTunes and it's stored in the iTunes Music/Movies folder. And I also see the movie in an iMovie Shared folder. In other words, it appears that a 2Gb movie (as an axample) becomes about 10Gb because it's saved in multiple places. Must I keep all of them?!
    With iPhotos, I've imported about 6Gb of photos from my Windows PC. No problem. I copied across all the directories and then imported them into iPhoto. I then thought I could delete all the directories as the iPhoto folder became 24Gb in size! Not sure how but it seems that as well as keeping my original 6Gb of photo directories it's also put them into the iPhoto directory and somehow made it a big folder size?! If I delete the original folders (since they're now in the iPhoto app folder) then I can't actually browse the JPGs files can I except from within iPhoto only?
    I've got about 80Gb of music, about 6Gb of photos and about 80Gb of movies. Somehow it's pretty much filled up 500Gb of hard drive (and very little other programs or files other than the normal iMac stuff it comes with) because of the way the Mac (iTunes, iMovie and iPhoto) seems to have the same thing copied everywhere.
    All input greatfully receive and apologies if I'm being thick.
    Richard.

    Richard
    I'll answer the iPhoto part for you.
    If you use iPhoto in its default setting then the images are copied into the Library on import. Yes you can now delete the directories you have copied over.
    then I can't actually browse the JPGs files can I except from within iPhoto only?
    Yes and no...
    The point of iPhoto is that it's your Photo Manager. It's the "go-to" app when you want to do anything with your Photos. - View them, edit them, email them, print them, use them in other apps, upload them whatever - all of these things are done from iPhoto.
    There are two advantages to working this way.
    1. You get to work with your Photos and don't have to think about files. This means the organisation possibilities are much greater than just files in folders. You can use Keywording, Smart Searching, Albums, Events and a plethora of other bases for categorising and therefore find your pics.
    2. iPhoto is integrated throughout the entire OS. That means your Library is available throughout the OS without iPhoto being open by means of Media Browsers. You can search your Library from a MEdia Browser and so on.
    So, while, yes, the files are not browsable via the Finder, there's no need to. Everything you need to do can be done with iPhoto.
    Want to edit the pics in something other than iPhoto:
    You can set Photoshop (or any image editor) as an external editor in iPhoto. (Preferences -> General -> Edit Photo: Choose from the Drop Down Menu.) This way, when you double click a pic to edit in iPhoto it will open automatically in Photoshop or your Image Editor, and when you save it it's sent back to iPhoto automatically. This is the only way that edits made in another application will be displayed in iPhoto.
    Note that iPhoto sends a copy+ of the file to Photoshop, so when you save be sure to use the Save command, not Save As... If you use Save As then you're creating a new file and iPhoto has no way of knowing about this new file. iPhoto is preserving your original anyway.
    There are many, many ways to access your files in iPhoto:
    *For Users of 10.5 and later*
    You can use any Open / Attach / Browse dialogue. On the left there's a Media heading, your pics can be accessed there. Command-Click for selecting multiple pics.
    Uploaded with plasq's Skitch!
    (Note the above illustration is not a Finder Window. It's the dialogue you get when you go File -> Open)
    You can access the Library from the New Message Window in Mail:
    Uploaded with plasq's Skitch!
    *For users of 10.4 and later* ...
    Many internet sites such as Flickr and SmugMug have plug-ins for accessing the iPhoto Library. If the site you want to use doesn’t then some, one or any of these will also work:
    To upload to a site that does not have an iPhoto Export Plug-in the recommended way is to Select the Pic in the iPhoto Window and go File -> Export and export the pic to the desktop, then upload from there. After the upload you can trash the pic on the desktop. It's only a copy and your original is safe in iPhoto.
    This is also true for emailing with Web-based services. However, if you're using Gmail you can use iPhoto2GMail
    If you use Apple's Mail, Entourage, AOL or Eudora you can email from within iPhoto.
    If you use a Cocoa-based Browser such as Safari, you can drag the pics from the iPhoto Window to the Attach window in the browser.
    *If you want to access the files with iPhoto not running*:
    For users of 10.6 and later:
    You can download a free Services component from MacOSXAutomation which will give you access to the iPhoto Library from your Services Menu. Using the Services Preference Pane you can even create a keyboard shortcut for it.
    For Users of 10.4 and later:
    Create a Media Browser using Automator (takes about 10 seconds) or use this free utility Karelia iMedia Browser
    Other options include:
    1. *Drag and Drop*: Drag a photo from the iPhoto Window to the desktop, there iPhoto will make a full-sized copy of the pic.
    2. *File -> Export*: Select the files in the iPhoto Window and go File -> Export. The dialogue will give you various options, including altering the format, naming the files and changing the size. Again, producing a copy.
    3. *Show File*: Right- (or Control-) Click on a pic and in the resulting dialogue choose 'Show File'. A Finder window will pop open with the file already selected.
    Regards
    TD

  • Question about static (+multithreading)

    Sample program for multithreading:
    cvidir\samples\utility\Threading\ThreadSafeVar\IncrementValue.prj
    Why all of global variables and functions are static ?
    regards
    Frog

    This is a CVI question and should be posted to the LabWindows/CVI forum instead. Static flags are used to tell the compiler that these global declarations are not used outside this code module (C file). It's good programming practice to declare global variables only used in one module as static.
    Best Regards,
    Chris Matthews
    National Instruments

  • Question about static method hiding

    I undestand that a static method may only be hidden in a subclass not overridden. But, I don't understand why an exception type thrown by the subclass method must be a subtype of the exception type thrown by the superclass method. For example,
    public class A {
    public static void foo() throws ExceptionA { }
    public class B extends A {
    public static void foo() throws ExceptionB { }
    gives a compile-time error if ExceptionB is not a subclass of ExceptionA. This makes perfect sense in the non-static case but what does it matter here?
    Thanks,
    Tim

    I don't understand your point. In either case, static
    or non-static, ExceptionB must be the same or a
    subclass of ExceptionA. My question is why this
    matters in the static case.I think it's for binary compatibility, that is, so that you can make changes to Java source files and recompile only the changed files. If you originally did not have the static method in class B, and called B.foo() in another class, the A.foo() method would actually be called at run time. If you then change the B class and add a foo() method, it must be compatible so that the other class's method call is still valid.
    If you're unfamiliar with the concept of binary compatibility, read the chapter in the Java Language Specification. It's a critical but often overlooked aspect of the Java language.

  • Questions about OAS Portal Forms to upload files

    Hello,
    I have quetions, about uploading files, see I need to creat a form that will be used by other people to upload information that later will be presented as downloads in the portal...
    so I created a form in my provider with a file (binary) field, and it mimes to my table in the DB, to the field "Archivo", then what I do is use a omniportlet and using HTML format I present like a link using the info in the field Archivo
    and when I clic on it it takes me to this link
    http://desarrollo06:7778/pls/portal/38173.PDF
    but the file I uploaded does not appear
    can aniyone help me to solve this?
    thanks in advances for the suggestions and your time ^_^

    The method you used to setup upload of file seems fine. I suppose you would have used a blob type to save the file in your db table.
    basically, you can develop a report offering a link calling perhaps a procedure which would query from the table and download the file.
    In that procedure, you would look for the file (vblob) and the mime_type from that table using a sql-query. then use them to setup the mime type for the http protocol, and download the file as follows.
    owa_util.mime_header(mime_type);
    owa_util.http_header_close;
    wpg_docload.Download_File(vblob);
    hope that helps!
    AMN

  • Administration Panel Error and a Question about Static IPs

    Since there appears to be no other place to report errors within the latest generation of Linksys router firmwares, I thought the forums may be the best place.
    If you use remote access to your router's Administration management console, upon saving any changes you are sent to the
    "Your settings have been successfully saved." page. Upon clicking cancel it successfully attempts to route to the appropriate hostname but does not consider the port being used; therefore, unless you have your management console hosted on port 80 it does not bring you back to the right place.
    This is mostly an annoyance.
    My question is I'm wondering if it's possible to assign static IP addresses from the router.
    On my older (much older) Linksys routers (before Cisco bought them out) you could easily assign static IPs.
    I cannot seem to find a way to do with newer generations.  All suggestions recommend assigning static IPs from the
    network devices themselves, however that poses problems on modern mobile devices which don't let you do that,
    and for laptops that are brought into a lot of different networks it becomes an annoyance to change those settings manually.
    I have a EA4500 router.
    Solved!
    Go to Solution.

    You want to assign a specific ip address to your computers/network devices thru the router? You can use the DHCP reservation feature of this router.
    "A DHCP Reservation is a permanent IP address assignment.  It is a specific IP address within a DHCP scope that is permanently reserved for leased use to a specific DHCP client."
    Please check this link:
    http://www6.nohold.net/Cisco2/ukp.aspx?vw=1&docid=71dac52653fa4944ae5e4f94ebdf9586_17362.xml&pid=80&...

  • A question about log4j.properties

    Normally I put the log4j.properties inside my web-application such as under WEB-INF. So it will be packaged into the WAR.
    But now I want to take it outside of the WAR and put it under a dir and furthermore I change its name to "myLog4j.log4j.properties". This has two advantages:
    1.
    One can change the contents without opent the WAR.
    2.
    Under this dir the other projects can put their xxx.log4j.properties so they can be managed easily.
    But I don't know where should I put this file and how to configure the server sothat the server can find this file and my program can write all the log infos into the log-file defined in the "myLog4j.log4j.properties".
    Can someone help?
    Regards

    Actually file log4j.properties should be in the classpath, that classloader could see it. Add the path to file into CLASSPATH.
    Thanks

  • For questions about your desktop icons and all file associations changing to itunes after install, follow this link.

    SUCCESS!
    I had the same problem and this is what helped me to fix the problem.  It is a computer problem in your registry.  Here's the link to the post that helped me. Good Luck!
    http://www.sevenforums.com/tutorials/19449-default-file-type-associations-restor e.html .   This link helped in fixing the problem.  Just follow the instructions.

    Drew
    The specific link for Apple Remote Desktop is here:
    http://discussions.apple.com/forum.jspa?forumID=1007
    This is the link for all the Forums. Apple Remote Desktop is in the Server Section at the bottom of the 2nd Column:
    http://discussions.apple.com/index.jspa
    You can't install Snow Leopard Remotely. Think about it.
    What you could do - and assuming you have OSX Server - is install 10.6 on one mac, get it fully up to date, install the remaining applications - assuming site licenses - use the System Image Utility on the Server (or a Client with the application installed) to create a NetBoot Image of that built workstation. Image the rest using OSX Server's NetBoot Service. I've done numerous site installations using OSX Server and NetBoot (60 and more individual workstations) in a day or two depending on the Software installed.
    Not surprisingly there is a dedicated forum for this also:
    http://discussions.apple.com/category.jspa?categoryID=96
    +" . . . is this a tool that would help obtain our goals quicker that installing all the software on each computer individually."+
    Apart from the initial OS install - Yes. You can install incremental OS Updates using ARD easily and quickly. Again if you have OSX Server you can utilise it's Software Update Service to achieve the same thing quickly and easily.
    If you don't have OSX Server you can by all means do this the way you're saying. You don't even need to use SuperDuper - why pay for something that can be done for free with what's already supplied? All you need is a firewire cable, target disk mode and the Restore option in Disk Utility. The more firewire cables you have the sooner you'll get it done.
    It does not really matter what you're using for your Network although a Time Machine Capsule is adequate enough.
    Tony

  • Question about static ip

    Here's the situation:
    I live in a house of about 30  tenants. The place uses a cisco WRVS4400N router. It seems that my  computer gets assigned a temporary ip automatically and then there will  be times when I get "kicked out" and my computer doesn't get connected  to the internet. Sometimes for few minutes and sometimes for hours.
    No  idea what happens there but could be that there are no ips left to  assign to my computer and someone else gets the ip address.
    Anyway I'm trying to find out if I can configure my computer with a static ip.
    The  maximum number of dhcp users was changed from 50 to 100 by me. IDK if  that means that I can assign a static ip from 1 to 100 but say I pick a  number 160 so the ip would be xxx.xxx.x.160.
    1. What are the steps I have to undertake to configure my computer on the router page? What info. do I have to modify?
    2. After I modify settings on the router page, do I have to change settings on my computer?

    Al,
    You do not need to change anything in the router. You can simply assign your PC a static IP address. If your DHCP pool is xxx.xxx.x.100-200, use something like xxx.xxx.x.99 on your PC to avoid IP conflict. (assign an address that is not used by the DHCP server) If your router is xxx.xxx.x.1, set that as the Default Gateway and Primary DNS Server on the PC. You can also use 8.8.8.8 as the DNS Server if you wish. The Subnet Mask should be 255.255.255.0
    See the following link for excellent instructions about giving a PC a static IP:
    http://www.howtogeek.com/howto/19249/how-to-assign-a-static-ip-address-in-xp-vista-or-windows-7/

  • Question about having a master sql scrpit/file that calls other sql files

    I know that in SQL Plus, the following works:
    master.sql:
    @script1.sql
    @script2.sql
    @scriptn.sql
    My problem is, I'm using the sql maven plugin and the jdbc driver doesn't seem to like the @script.sql syntax. So the question is two-fold. Is it possible to get this master script behavior using the jdbc driver and not SQL Plus. Second, is the @script.sql syntax, specific to SQL Plus?
    Thanks!
    Justin

    The @<<script>> syntax is specific to SQL*Plus. I'm not familiar with the "sql maven plugin", so I have no idea whether it has some analogous syntax for calling scripts in other files or not. The JDBC API works just with SQL statements, not scripts, so whatever application (I'm guessing SQL Maven?) that is using the JDBC driver has to interpret the @<<script>> syntax.
    Justin

  • Question about static context when using classes

    hey there.
    i'm pretty new to java an here's my problem:
    public class kreise {
         public static void main (String[] args) {
             //creating the circles
             create a = new create(1,4,3);
             create b = new create(7,2,5);
             System.out.println(a);
             System.out.println(b);
             //diameters...unimportant right now
             getDiameter a_ = new getDiameter(a.radius);
             getDiameter b_ = new getDiameter(b.radius);
             System.out.println(a_);
             System.out.println(b_);
             //moving the circles
             double x = 2;
             double y = 9;
             double z = 3;
             a = create.move();
             System.out.println(a);
    }creating a circle makes use of the class create which looks like this:
    public class create {
        public double k1;
        public double k2;
        public double radius;
        public create(double x,double y,double r) {
            k1 = x;
            k2 = y;
            radius = r;
        public create move() {
            k1 = 1;
            k2 = 1;
            radius = 3;
            return new create (k1,k2,radius);
        public String toString() {
        return "Koordinaten: "+k1+" / "+k2+". Radius: "+radius;
    }now that's all totally fine, but when i try to usw create.move to change the circles coordinates the compiler says that the non-static method move() can't be referenced from a static context. so far i've seen that my main() funktion MUST be static. when declaring the doubles k1, k2, and radius in create() static it works, but then of course when having created the second circle it overwrites the first one.
    i pretty much have the feeling this is very much a standard beginner problem, but searching for the topic never really brought up my problem exactly. thanks in advance!

    You can't access a non-static method from within a static context. So, you have to call move() from outside of the main method. main has to be static because, in short, at least one method has to be static because there haven't been any objects initialized when the program is started. There are more fundamental problems than with just the static context issue.
    I'm confused by your code though. You call create.move(), but this would only be possible if move() was static, and from what I see, it's not. Now that's just one part of it. My second issue is that the logic behind the move() method is very messy. You shouldn't return a newly instantiated object, instead it should just change the fields of the current object. Also as a general rule, instance fields should be private; you have them as public, and this would be problematic because anything can access it.
    Have you heard of getters and setters? That would be what I recommend.
    Now, also, when you are "moving" it, you are basically creating a new circle with completely differently properties; in light of this, I've renamed it change(). Here would be my version of your code:
    public class CircleTester {
        public static void main (String[] args)
             //Bad way to do it, but here's one way around it:
             new CircleTester().moveCircle();
        private void moveCircle()     //really a bad method, but for now, it'll do
            Circle a = new Circle(1,4,3);
            Circle b = new Circle(7,2,5);
            System.out.println(a);
            System.out.println(b);
            //diameters. Don't need to have a new getDiameter class
            double a_ = a.getRadius() * 2;     //Instead of doing * 2 each time, you could have a method that just returns the radius * 2
            double b_ = b.getRadius() * 2;
            System.out.println(a_);
            System.out.println(b_);
            //move the circle
            a.change(2,9,3);
            System.out.println(a);
    public class Circle {
        private double k1;
        private double k2;
        private double radius;
        public Circle(double x,double y,double r)
            k1 = x;
            k2 = y;
            radius = r;
        public void change(int x, int y, int r)
            k1 = x;
            k2 = y;
            radius = r;
        public String toString()
             return "Koordinaten: "+k1+" / "+k2+". Radius: "+radius;
        public double getRadius()
             return radius;
    }On another note, there is already a ellipse class: http://java.sun.com/j2se/1.5.0/docs/api/java/awt/geom/Ellipse2D.html

  • Question about how Oracle manages Redo Log Files

    Good morning,
    Assuming a configuration that consists of 2 redo log groups (Group A and B), each group consisting of 2 disks (Disks A1 & A2 for Group A and Disks B1 and B2 for group B). Further, let's assume that each redo log file resides by itself in a disk storage device and that the device is dedicated to it. Therefore in the above scenario, there are 4 disks, one for each redo log file and, each disk contains nothing else other than a redo log file. Furthermore, let's assume that the database is in ARCHIVELOG mode and that the archive files are stored on yet another different set of devices.
    sort of graphically:
        GROUP A             GROUP B
          A1                  B1
          A2                  B2The question is: When the disks that comprise Group A are filled and Oracle switches to the disks in Group B, can the disks in Group A be taken offline, maybe even physically removed from the system if necessary, without affecting the proper operation of the database ? Can the Archiver process be temporarily delayed until the disks (that were removed) are brought back online or is the DBA forced to wait until the Archiver process has finished creating a copy of the redo log file into the archive ?
    Thank you for your help,
    John.

    Hello,
    Dropping Log Groups
    To drop an online redo log group, you must have the ALTER DATABASE system privilege. Before dropping an online redo log group, consider the following restrictions and precautions:
    * An instance requires at least two groups of online redo log files, regardless of the number of members in the groups. (A group is one or more members.)
    * You can drop an online redo log group only if it is inactive. If you need to drop the current group, first force a log switch to occur.
    * Make sure an online redo log group is archived (if archiving is enabled) before dropping it. To see whether this has happened, use the V$LOG view.
    SELECT GROUP#, ARCHIVED, STATUS FROM V$LOG;
    GROUP# ARC STATUS
    1 YES ACTIVE
    2 NO CURRENT
    3 YES INACTIVE
    4 YES INACTIVE
    Drop an online redo log group with the SQL statement ALTER DATABASE with the DROP LOGFILE clause.
    The following statement drops redo log group number 3:
    ALTER DATABASE DROP LOGFILE GROUP 3;
    When an online redo log group is dropped from the database, and you are not using the Oracle Managed Files feature, the operating system files are not deleted from disk. Rather, the control files of the associated database are updated to drop the members of the group from the database structure. After dropping an online redo log group, make sure that the drop completed successfully, and then use the appropriate operating system command to delete the dropped online redo log files.
    When using Oracle-managed files, the cleanup of operating systems files is done automatically for you.
    Your Database wont be affected as you can operate with 2 redo log files in each group as The minimum number of redo log files required in a database is two because the LGWR (log writer) process writes to the redo log files in a circular manner. so the process will hang becuase you are having 2 only groups if you want to remove 1 add a third one and make it the current group then remove the one you want to be offline.
    Please refer to:
    http://download.oracle.com/docs/cd/B10500_01/server.920/a96521/onlineredo.htm#7438
    Kind regards
    Mohamed
    Oracle DBA

Maybe you are looking for

  • Unable to Edit Price Lists in Advanced Pricing Vision Instance

    Hello I have a new Vision Instance for 12.1.3 and when I switch responsibility to Oracle Pricing Manager Vision Operations I am unable to edit and of the price lists or modifiers that are in the system by default. any suggestions on what I need to up

  • GeForce3Ti200 TV Out Problem

    I am able to switch the video output from my monitor to my TV, but I'm not able to get both devices to display a picture at the same time!  I don't have a twinview tab under display properties (like the book says I should have), so I can't use that t

  • Alert Rules

    Can someone tell why we define Alert categories and alert rules...

  • Courier Font Doesn't Render Properly

    I have the above problem for about 1,5 months.. I changed the Courier fonts in my ~/.fonts/ folder with the ones in Vista but it didn't solve the problem.. No other fonts are being rendered like this.. The problem is only occurs with Courier font..

  • Problems with JDialog

    I've got a JFrame opened with a menu from where I open a modal JDialog, this JDialog window has a button, let say a "Cancel button" which I want to use to close this J Dialog window, let say to hide it, I do not want to lose the instances variables o