Synchronization in httpservletrequest

Hi,
Forgive me if this is a totally stupid question, but assuming some class
like:
class MyPage extends HttpServletRequest {
private Object
   something;
} can I assume that I can access 'something' through-out the
lifetime of this MyPage instance and that it will be unique ? can I rely
on it as a member variable or do I need to synchornise access to it ?
I seem to remember reading that my servlet needed to implement SingleThreadedModel
or something but when I tried this it was 'deprecated' ...
thanks for any hints :)

Since many threads of executon may be accessing your servlet concurrently it needs to be thread safe. The something instance variable will be shared by multiple threads and access to this variable should be synchronized. You can use the SingleThreadedModel to allow only one thread to execute the servlet code at any given time but this may be too large a granularity and cause performance issues. Try synchronizing access to just the something instance variable.

Similar Messages

  • Is it necessary to synchronize HttpServletRequest object

    Is it necessary to synchronize HttpServletRequest object .
    Justify your answer
    With regards
    Aruanbh Dash

    i'd say no, because it's supposed to be generated and processed by a single thread of the servlet engine
    after that, nobody will arrest you if you torture a request with multithreading

  • URGENT!! synchronization in servlets

    Hello
    I need to synchronize access to a connection in a servlet. If I make the connection static, and put the connection in a synchronized block, will that work? The servlet is not a SingleThread servlet, so more than one request could be coming through at once. Will synchronization work for this case?
    Here is a simplified example of what I mean (this is not actual code, just an illustration)...
    public class test extends HttpServlet {
    private static Connection con;
    public doGet(HttpServletRequest req, HttpServletResponse res)
    synchronized(con)
    //do stuff with connection here
    //output stuff
    Please help!

    That will work.
    But a better alternative, in terms of design would be to define synchronized methods on Connection.
    e.g.
    public class Connection
    public synchronized doStuff () { ... }
    That way you are localizing the thread safety issues within Connection, and not exposing those issues to the outside world.
    In future, if the Connection can support multi-threaded access, you just have to change the Connection, and not all the calling code.
    The way you have done it, the onus is on ALL the callers of Connection.

  • Synchronize question in servlet

    Hello everybody!
    I have some question regarding synchronization in a servlet, and hope someone can help me.... (see example code below)...
    1) The methods "getNames(), addNames(), removeNames()" need to be synchronized due to that the "names" vector can be accessed by many at the same time, right?
    2) Do I need to synchronize the method "addANumber()"? why/why not?
    3) Do I need to synchronize the methods "setString(), getString()" placed in the "Test" class? why/why not?
    4) All "global" variables, i.e. the variables declared as object or class variable, need to be synchronized. Is this valid for servlet methods as well? For example the addANumber() method, or whatever method (that doesnt use global variables) I place in the Servlet class (ASR-class)
    Please all your experts out there, help me.....
    Thanx in advanced
    TheMan
    import java.io.*;
    import javax.servlet.*;
    import javax.servlet.http.*;
    import java.util.*;
    public class ASR extends HttpServlet {
        private Vector names;
        private ServletConfig config;
        public void init(ServletConfig config) throws ServletException {
              synchronized(this) {
                this.config=config;
                names = new Vector(100,10);
        public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
            response.setContentType("text/plain");
            PrintWriter out = response.getWriter();
            //add a name to the vector
            String theName = request.getParameter("inpName");
            addNames(theName);
            //get the vector and print that name
            Vector tmp = getNames();
            int pos = Integer.parseInt(request.getParameter("number"));
            out.println("a person " + tmp.get(pos));
            addANumber(pos);
            //remove a name
            removeNames(pos);
            //create a test object
            Test t = new Test();
            //set a string in the test object
            t.setString("yyy");
            //print that string
            out.println("test string: " + t.getString());
        public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
            doGet(request, response);
        //needs to be synchronized?
        public int addANumber(int number){
            int adding = number + 10;
            return adding;
        public synchronized Vector getNames(){
            return names;     
        public synchronized void addNames(String theName){
            names.add(theName);
         public synchronized void removeNames(int pos){
             names.remove(pos);
    class Test {
        public String str = "xxx";
        //needs to be synchronized????
        public void setString(String str){
            this.str = str;
         //needs to be synchronized????
        public String getString(){
            return str;
    }

    The teachers, which are responsible for the
    servlet-courses that I have taken, never spoke about
    the member variables, in the same way you did. They
    used member variables and synchronized methods or
    synchtronized code blocks to access them. They never
    said that "one should not/try not to use member
    variables". I can understand this in the context of using Servlets to gain understanding on some of the issues involved with multithreading. In a classroom, servlets may pose an easier laboratory (so to speak) for learning threading concepts than something like nachOS or something like that.
    For example, they made a ordinary "page counter",
    i.e. a counter which increases by one for each "hit"
    on the page. I that example they, and I, thought it
    would be a good idea to use a member variable (a int
    counter), since all instances of the servlet will use
    the same variable. How should one construct such page
    otherwise? Local variables and databases is one way.As mentioned in an earlier post, in the real world I can think of very few reasons as to why a particular servlet may need to keep state. In terms of keeping a counter, what you would probably do is to analyze the access logs...Yes -- not a programmatic solution, but a very doable, low maintenance, and quick one. One important lesson to learn is that not all problems are best solved in code. This is probably not the right answer for a test though...
    I just got a bit confused, my teachers had no problem
    with member variables, but you guys recomend me to
    use local variables instead. Which leader should I
    follow :) ?Capitalist answer: whoever pays you :) Seriously, why not talk to your teachers about what you have learned here versus what they are teaching?
    - N

  • HttpServletRequest's getRequestURL method

    Currently I'm trying to change as many usages of StringBuffer in my application to StringBuilder. In the Javadoc for StringBuffer it explains -
    "As of release JDK 5, this class has been supplemented with an equivalent class designed for use by a single thread, StringBuilder. The StringBuilder class should generally be used in preference to this one, as it supports all of the same operations but it is faster, as it performs no synchronization."
    So my question is, why does HttpServletRequest's getRequestURL method still return a StringBuffer instead of a StringBuilder? I see even in the upcoming release that this has not changed.

    Each time the server receives a request for a
    servlet, the server spawns a new thread and calls
    service() method. The service() method checks the
    HTTP request type (GET, POST, PUT, DELETE, etc.) and
    calls doGet, doPost, doPut, doDelete, etc., as
    appropriate.
    It is better to not override the service() and use
    doGet(), doPost()... whichever is required.For HttpServlets.
    For the streight up javax.servlet.Servlet - one you implement fully yourself - then the service() method is where you start all your servlet's work (sorta like the main method in an app).

  • How can I synchronize all hotmail folders in Mac's "Mail"? (Not just Inbox)

    I tried to synchronize my hotmail accounts in Mac's Mail but only those emails inside "Inbox" can be synchronized. No other folders under my hotmail can be synchronized. Is there any tools to solve this problem?

    If you right click on a son in iTunes and click Get Info. Under the Sorting tab iyo can change how the songs is sorted in iTunes
    Tips for using song and CD info to organize your music
    You can edit information in the Info window to make it easier to find and sort items in your library. For example, you can:
    Group individual movements on a classical CD into one work by indicating the name of the work (for example, “Piano concerto in A Minor, Op. 54”) in the Grouping field.
    Group songs that are part of a compilation together in your library by clicking Details and selecting the checkbox next to “Album is a compilation of songs by various artists”.
    Identify the individual artists on a tribute album in the Artist field, and type “various” in the Album Artist field.
    Create your own genre category by clicking Details and typing the category in the Genre field.
    Change the order in which tracks on a CD play by changing the numbers in the Track fields.
    Create a Smart Playlist that includes only songs that are just the right speed for your workout by typing the number of beats per minute in the BPM field. For instructions, see Create a Smart Playlist.
    Identify a movie as a music video (click the Options button, and choose Music Video from the Media Kind pop-up menu).
    Identify an item that you imported from a CD as an audiobook, so it appears under Audiobooks instead of Music (click the Options button and choose Audiobook from the Media Kind pop-up menu). If you do this, iTunes also remembers your place in the audiobook.
    Enter custom sorting criteria for an item. Select the item, choose File > Get Info, click Sorting, and enter the custom text.
    Does the non-syncing songs play in iTunes on the computer?
    is there anything different about the songs that do sync and those that do not? Like where they cam from? The format (Get Info>under the File tab).

  • How do I add my Hotmail account to my Mail app on my MacBook Pro so that it synchronize automatically ?

    Hi guys, I'm new to Mac. I know that you can add email accounts likeHotmail into your Mail app so that you can view, edit, modify, create and delete your emails and folders, etc. The questions I have are (1) can I see all the emails I have not just in the inbox but all the other folders as well just like if I was logging on to Hotmail via Internet Explorer ? (2) what happens if I read some emails, delete or move some emails, create new emails and send or save in draft, create or delete folders, etc in the Mail app on my MacBook Pro, will this synchronize and reflect the same on my Hotmail account if I was to logging via Internet Explorer ? How about the other way ? If so, how do I set it up on my MacBook Pro to do this automatically ?
    I know that this doesn't work with Hotmail accounts on my iPhone 4 via the Mail app. Everytime I read an email or delete an email on my Mail app, it does not synchronize or reflect the same on my live Hotmail account when I logging via Internet Explorer.
    Any help, guidance or advise would be appreciated. Thanks.

    Edit: never mind, I was using the wrong password

  • Hello, My iCal don't synchronize older events than two or three month ago. How can I do to synchronize all my schedule? In iTunes it's all right in Calendars. I don't put a cross in "synchronize event older than ....... days". Thanks for answer.

    Hello, My iCal don't synchronize older events than two or three month ago. How can I do to synchronize all my schedule? In iTunes it's all right in Calendars. I don't put a cross in "synchronize event older than ....... days". Thanks for answer.

    Just saw your post. Better late than never. You may want to
    consider GameBrix.com, where you can create Flash based, casual
    games using your web browser. No downloads are required. You can
    create a game from scratch using a library of images, sounds and
    game mechanics. You can also upload your own. The online script
    editor will allow you to view and edit the ActionScripts associated
    with each game mechanic. In short, a great way to ramp up on game
    design and build your own game without investing a lot of $
    upfront.
    BTW I am associated with GameBrix so any feedback is
    appreciated.

  • Error while scheduling Background Job for User/Role Full Synchronization

    Hi all,
    We have installed RAR 5.3 Component and uploaded the authorization data & established the connectors to the backend system.
    We have performed all the post installation activities and everything is complete.
    When we have scheduled User -Full Synchronization with the Back End system as  a part of Post Installation Activity we are receiving the below error message
    "Error while executing the Job:Cannot assign an empty string to host variable 2."
    Also the VIEW LOG/ Terminate Job buttons are disabled  in this screen.
    Can somebody please help us in resolving the above issue
    Thanks and Best Regards,
    Srihari.K

    Hi,
    We are copy pasting the error log (Part as it is huge) below here. We could able to do Full Synch for Roles and also for Profiles. Only for User Synch we are getting this error and none of the users are sychronized to RAR
    Jan 13, 2009 12:34:27 AM com.virsa.cscext.dao.CSCDAO populateGenObjUser
    INFO: Update user WILSONA of HL2-QAHR
    Jan 13, 2009 12:34:27 AM com.virsa.cscext.dao.CSCDAO populateGenObjUser
    INFO: Update user WINDC of HL2-QAHR
    Jan 13, 2009 12:34:27 AM com.virsa.cscext.dao.CSCDAO populateGenObjUser
    INFO: Update user WLADICHJ of HL2-QAHR
    Jan 13, 2009 12:34:27 AM com.virsa.cscext.dao.CSCDAO populateGenObjUser
    INFO: Update user WUK of HL2-QAHR
    Jan 13, 2009 12:34:27 AM com.virsa.cscext.dao.CSCDAO populateGenObjUser
    INFO: Update user ZENGS of HL2-QAHR
    Jan 13, 2009 12:34:27 AM com.virsa.cscext.dao.CSCDAO populateGenObjUser
    INFO: Update user ZHENGL of HL2-QAHR
    Jan 13, 2009 12:34:27 AM com.virsa.cscext.dao.CSCDAO populateGenObjUser
    INFO: All System Flag:false=====Last Batch Flag:true
    Jan 13, 2009 12:34:27 AM com.virsa.cc.xsys.bg.BatchRiskAnalysis loadUserData
    INFO: @@@ User sync completed for params true: Syskey List is [HL2-QAHR]
    Jan 13, 2009 12:34:27 AM com.virsa.cc.xsys.bg.BgJob run
    WARNING: *** Job Exception: Cannot assign an empty string to host variable 2.
    com.sap.sql.log.OpenSQLException: Cannot assign an empty string to host variable 2.
         at com.sap.sql.log.Syslog.createAndLogOpenSQLException(Syslog.java:85)
         at com.sap.sql.log.Syslog.createAndLogOpenSQLException(Syslog.java:124)
         at com.sap.sql.types.VarcharResultColumn.setString(VarcharResultColumn.java:57)
         at com.sap.sql.jdbc.common.CommonPreparedStatement.setString(CommonPreparedStatement.java:511)
         at com.sap.engine.services.dbpool.wrappers.PreparedStatementWrapper.setString(PreparedStatementWrapper.java:355)
         at com.virsa.cscext.dao.CSCDAO.updateIgnoredUserData(CSCDAO.java:1388)
         at com.virsa.cscext.dao.CSCDAO.populateGenObjUser(CSCDAO.java:1169)
         at com.virsa.cc.xsys.bg.BatchRiskAnalysis.populateGenObj(BatchRiskAnalysis.java:868)
         at com.virsa.cc.xsys.bg.BatchRiskAnalysis.insertBAPIUserData(BatchRiskAnalysis.java:142)
         at com.virsa.cc.xsys.bg.BatchRiskAnalysis.loadUserData(BatchRiskAnalysis.java:390)
         at com.virsa.cc.xsys.bg.BatchRiskAnalysis.performBatchSyncAndAnalysis(BatchRiskAnalysis.java:1275)
         at com.virsa.cc.xsys.bg.BgJob.runJob(BgJob.java:402)
         at com.virsa.cc.xsys.bg.BgJob.run(BgJob.java:264)
         at com.virsa.cc.xsys.riskanalysis.AnalysisDaemonBgJob.scheduleJob(AnalysisDaemonBgJob.java:240)
         at com.virsa.cc.xsys.riskanalysis.AnalysisDaemonBgJob.start(AnalysisDaemonBgJob.java:80)
         at com.virsa.cc.comp.BgJobInvokerView.wdDoModifyView(BgJobInvokerView.java:436)
         at com.virsa.cc.comp.wdp.InternalBgJobInvokerView.wdDoModifyView(InternalBgJobInvokerView.java:1225)
         at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.doModifyView(DelegatingView.java:78)
         at com.sap.tc.webdynpro.progmodel.view.View.modifyView(View.java:337)
         at com.sap.tc.webdynpro.clientserver.cal.ClientComponent.doModifyView(ClientComponent.java:481)
         at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.doModifyView(WindowPhaseModel.java:551)
         at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processRequest(WindowPhaseModel.java:148)
         at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.processRequest(WebDynproWindow.java:335)
         at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:143)
         at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:319)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessingStandalone(ClientSession.java:713)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessing(ClientSession.java:666)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doProcessing(ClientSession.java:250)
         at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:149)
         at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:62)
         at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doGet(DispatcherServlet.java:46)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:386)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:364)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:1039)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:265)
         at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
         at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:175)
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
         at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
         at java.security.AccessController.doPrivileged(Native Method)
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:102)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:172)
    Jan 13, 2009 12:34:27 AM com.virsa.cc.xsys.bg.BgJob setStatus
    INFO: Job ID: 13 Status: Error
    Jan 13, 2009 12:34:27 AM com.virsa.cc.xsys.bg.BgJob updateJobHistory
    FINEST: --- @@@@@@@@@@@ Updating the Job History -
    2@@Msg is Error while executing the Job:Cannot assign an empty string to host variable 2.
    Jan 13, 2009 12:34:27 AM com.virsa.cc.xsys.bg.dao.BgJobHistoryDAO insert
    INFO: -
    Background Job History: job id=13, status=2, message=Error while executing the Job:Cannot assign an empty string to host variable 2.
    Jan 13, 2009 12:34:27 AM com.virsa.cc.xsys.riskanalysis.AnalysisDaemonBgJob scheduleJob
    INFO: -
    Complted Job =>13----
    Please let us know how to resolve this error
    Thanks and Best Regards,
    Srihari.K

  • CRM Genesys (G+ 7.5) addional fields during synchronization of call list.

    Hello.
    I have the requirement of sending additional fields to Genesys (G+ 7.5) during synchronization of call list.
    Do you know if it is possible? I have searched for any documentation or similar topic and I haven't found any document.
    Thank you in advanced.
    JM

    it can be done with the help of a system code 'sy-xcode'. it is initialised the time list is sorted so just keeping a check point, we can solve this problem.
    Vishu Khandelwal

  • I can not synchronize data from the prelude livelog

    I can not synchronize data from the prelude livelog apparently seems to be all right, more aprasenta the following message: The Open Clip does not support XMP.
    The Prelude can not apply metadata in it.
    please can someone help me

    Hi -
    When it comes to AVCHD footage, Prelude wants to leverage the complex folder structure in order to save metadata. If the file is just the *.MTS file and is not part of the original folder structure, Prelude will report it cannot write metadata to the file. You can transcode the *.MTS to another format and then add metadata.
    We are looking at future solution for what we call "naked MTS file", but unfortunately that is not part of the currently released product version.
    Michael

  • Business partners synchronization

    Hi
    We have FSCM configured with collections, disputes and Credit management. All 3 of them are active and working in production. We are migrating another business into existing implemented SAP FSCM.
    In Existing implementation we have business partners created for every customer created in AR. All of them were numbered sequentially ranging within 8 digits (ranging from 20000000 to 89999999). We have activated customer master data synchronization and whenever a new customer is created a BP gets created automatically with the same number range (Customer to BP sync is activated with BP having same number range as in customer master but it is set as External numbering in BP numbering). We also had customer contact details created. Contact persons were also having BPs created internally (in background) for every contact person is created in AR. Contact person in AR doesn't need a number range but since BP needs a number, it was assigned to a series of number range starting from 00001 to 10,000 and they were set to internal number range. Customer contact persons were almost 8000 and all those internal numbers were used and created as business partners till 8000.
    Since we are bringing new customers from new business we have customers whose numbers are under 10,000 as well. Since we wanted to keep the numbers same, I have to make adjustments to business partner number range and I have changed BP number range from 1 to ZZZZZZZZZ (and kept external) so that it can accept all number ranges from customers as is. However the new customers are still having issues as system cannot create new BP for new customer as numbers under 10,000 were already used in existing system.
    Is there a way, I can delete all existing 10,000 business partners which were created as BP and re-use these numbers for new customers?
    Can I overwrite all this data with new customer master data being created?
    Can I delete the link between Customer & BP for existing ones?
    If I can delete a link and overwrite new data, can they be linked to customer master which is needed?
    Any suggestions or any ideas please?
    Thanks
    Aleem

    Thanks for quick reply Mark.
    We did not create new account group at customer master and we are creating customers in the same account group. However we had to adjust number range from ( 20000000 to 89999999) to (1 to 89999999). Due to this I had to adjust BP number range also from (20000000 to 89999999) to (1 to 89999999 or ZZZZZZZZ ). Customer creation was fine for new customers which were under 10,000 but business partner is conflicting with existing BPs which were created as contact person.
    Since we are not using BP's for contact person in any place, they are of no use sitting as business partner and using the numbers. Hence I am trying to delete existing BPs which were under 10,000 to free up the numbers to re-use for new customers.
    Any more suggestions please?

  • Podcast Synchronization of Ipod and Hard Drive

    Hi,
    I'm fairly new to the whole iTunes/iPod thingy, so this question might sound stupid, but what I wanna do is the following:
    I've downloaded various podcast episodes of different podcasts to my hard drive. For some podcasts, I want to begin with the first episode and catch up with everything, and so I also downloaded those.
    Now, my iPod has only limited memory space left, so I want to have the first episodes on my iPods to listen to them, and then gradually replace them with the next expisodes.
    However, the synchronize option doesn't work here at all (or I'm too stupid to use it). And neither do I want to manually put the episodes on my iPod because this would be rather time-consuming.
    First, I unticked the more recent episodes (those I don't want to listen to right now) in iTunes on my harddrive and figured, if I then click on sychronize (all), it would transfer all selected episodes. Well, that didn't work. It still put the deselected episodes on my iPod. Then I thought I would select certain podcasts and only synchronize those, but it still put all the deselected episodes for these podcasts on my iPod.
    The options like "sychronize newest episodes" and similar ones don't work either.
    So, for me, it would appear to be the very simplest solution to have a sychronize option like "synchronize all selected episodes" in the menu but no, there is none like this (I'm using iTunes 7). I have to admit I've only been introduced to the whole Apple / iTunes thingy because I got an iPod as a present and I have already found way too many things that are way too complicated and not practical, so this just seems to be another one of these issues. I would love if someone could prove me wrong and teach me how to accomplish what I described above without having to manually move around episodes every other day.
    And another rather confusing thing: initially, I had set iTunes to download the latest episode for a given podcast after a refresh. Then, when I realized I wanted to start with the earlier episodes and save some memory space, I set it so it would do nothing. Now, however, it really does nothing. It doesn't even display when a new episode is available. For example, I had the latest episode of an extensive podcast series and deleted it in my iTunes because it took a lot of memory space. But now I don't even see this episode any longer. I'm sorry, I'm not good at describing problems but what I want is, I want to see a list of all available episodes that will be updated regularly but I don't want the latest episodes to be downloaded automatically.. how in the world can I do that?
    Sorry for the long post, I'm just getting a bit frustrated after having spent half a day on trying to figure these seemingly simple issues out
    Thanks a lot for any help!
    iPod Nano   Windows XP   iTunes 7

    You can delete songs from your iTunes/computer hard drive after transferring them to the iPod, and for this you need to set your iPod to manage the iPod content manually.
    However, storing music on your iPod and nowhere else is an extremely risky option because when (and not if) there comes a time to restore your iPod, which is a very common fix for iPod problems, then all the music would be erased. If you no longer have the music in iTunes (or any other back up), then all that music would be lost.
    At the very least back up your music to either cd or dvd before deleting it, particularly any purchased music/videos, as this would have to be bought again if it were lost. See this about backing up media.
    How to back up your media in iTunes.
    What if the iPod were lost/stolen/needed repair? Again, the music would lost. I strongly recommend a back up, and if computer hard drive space is in short supply, you should seriously consider an external hard drive. They are not expensive, and the cost is well worth it when compared to the loss of all your precious music.

  • Lightroom synchronization trying to drop all my photos

    Hello,
    I recently installed OSX LR4, and was happily using it for a couple days on an upgraded LR3 catalog, but now when I go to synchronize any folder it will say (for example):
    Import new photos (252)
    Removing missing photos from catalog (252)
    If I click "Show Missing Photos", it shows all the photos, and if I go to "Show In Finder" they are all there and there seems to be no recently modified files or anything suspicious looking. If I go ahead with the synchronization, I lose all the metadata, settings, etc from the photos. I also tried opening the old catalog in LR3 and the same issue exists.
    Why is Lightroom doing this? Any ideas how to get around it? File permissions maybe?
    Thanks in advance for any help you guys can provide.

    It seems related to http://forums.adobe.com/thread/608096
    I am not using any special characters and haven't renamed any directories. When I try to create a new catalog, and then import the directory structure from the original, it seems to load up most of the metadata just fine, but in the "Folders" section, some of the subdirectories are shown as being all in lowercase when they aren't that way on the filesystem (e.g. LR shows "nex-5n", the filesystem shows "NEX-5N".
    I'm scared of losing all the work I've done on this catalog

  • LR 2.0 Synchronization hangs

    Is anybody else seeing this, hopefully with a solution or workaround?
    When I try to synchronize some folders with more than around 120 files, LR shows the progress up to 25% or so in its titlebar, and then - nothing. The percent complete vanishes from the titlebar, and LR never finishes the sync. I left it running Synchronize Folder on a folder with just over 800 images (by its count in the folder panel) for over 8 hours today while I was out of the office, and it never finished even the "Import new photos(counting)" portion. Synchronizing individual sub-folders of that folder with 90-120 files works fine, completing each one in under a minute, but one with 128 files hangs.
    Any tips, fixes, or workarounds greatly appreciated!
    Jack

    > When I try to synchronize some folders with more than around 120 files, LR
    > shows the progress up to 25% or so in its titlebar, and then - nothing.
    > The percent complete vanishes from the titlebar, and LR never finishes the
    > sync. I left it running Synchronize Folder on a folder with just over 800
    > images (by its count in the folder panel) for over 8 hours today while I
    > was out of the office, and it never finished even the "Import new
    > photos(counting)" portion. Synchronizing individual sub-folders of that
    > folder with 90-120 files works fine, completing each one in under a
    > minute, but one with 128 files hangs.
    I discovered similar non-linear performance problems when generating
    previews. The time to generate each preview increased as the number of
    previews increased. With a small number of previews, LR 2 could generate
    one preview per second. As the number of previews increased, the time to
    generate a single preview increased to ten seconds per preview, and at
    40,000 images, LR 2 could not generate even one preview in several hours.
    After a week of trying to get it to work, I finally had to remove LR 2. I'm
    waiting for the release that fixes these performance problems.
    Best,
    Christopher

Maybe you are looking for

  • How can I control my pc and other computers with my ipod touch 5 gen ?

    Hello I have recently bought an iPod 5th Generation and I'm very happy with it !! My question is. I have an old laptop iBook and it is connected to a hard disk where I stock my music.... So basically, this old computer is my jukebox. The only problem

  • View for maxlogmembers????

    Is there a view or table that shows the current values for database settings such as MAXLOGMEMBERS, MAXLOGFILES, etc.???

  • IDoc for L_TO_CREATE_DN

    Hello All, We are trying to implement an interface process with an external WMS system to our ECC 6.0. We are looking for a standard iDoc that we can receive to 6.0 to create a Transfer Order similar to LT03 or FM L_TO_CREATE_DN. I've identified WMTO

  • How to install the toolbar in thunderbird

    I accidentdetaly removed the toolbar in thunderbird and do not know how to get it back.

  • I need to run a Windows program on MacAir!  HELP!

    I have a Macbook Air.  I host a bowling tournament every year but the software I use doens't have a MAC version.  I'm told I can download some software that lets me use a Windows program on my Mac. Any suggestions on what to use? Thanks in advance fo